summaryrefslogtreecommitdiffstats
path: root/drivers/edac/i5100_edac.c
diff options
context:
space:
mode:
authorArthur Jones <ajones@riverbed.com>2008-07-25 10:49:06 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2008-07-25 19:53:48 +0200
commit178d5a742291976d13bff55fa2b130879d4510de (patch)
tree3a7bb968023b1a7f60771ddb3410ed4a5470f13c /drivers/edac/i5100_edac.c
parentedac: i5100 fix enable ecc hardware (diff)
downloadlinux-178d5a742291976d13bff55fa2b130879d4510de.tar.xz
linux-178d5a742291976d13bff55fa2b130879d4510de.zip
edac: i5100 fix unmask ecc bits
Explicitly unmask ECC errors we are interested in reporting. Signed-off-by: Arthur Jones <ajones@riverbed.com> Signed-off-by: Doug Thompson <dougthompson@xmission.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/edac/i5100_edac.c')
-rw-r--r--drivers/edac/i5100_edac.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/edac/i5100_edac.c b/drivers/edac/i5100_edac.c
index 509eec860c37..d85e7992eb6a 100644
--- a/drivers/edac/i5100_edac.c
+++ b/drivers/edac/i5100_edac.c
@@ -75,6 +75,7 @@
#define I5100_FERR_NF_MEM_ANY(a) ((a) & I5100_FERR_NF_MEM_ANY_MASK)
#define I5100_NERR_NF_MEM 0xa4 /* MC Next Non-Fatal Errors */
#define I5100_NERR_NF_MEM_ANY(a) I5100_FERR_NF_MEM_ANY(a)
+#define I5100_EMASK_MEM 0xa8 /* MC Error Mask Register */
/* device 21 and 22, func 0 */
#define I5100_MTR_0 0x154 /* Memory Technology Registers 0-3 */
@@ -709,6 +710,11 @@ static int __devinit i5100_init_one(struct pci_dev *pdev,
goto bail;
}
+ /* enable error reporting... */
+ pci_read_config_dword(pdev, I5100_EMASK_MEM, &dw);
+ dw &= ~I5100_FERR_NF_MEM_ANY_MASK;
+ pci_write_config_dword(pdev, I5100_EMASK_MEM, dw);
+
/* device 21, func 0, Channel 0 Memory Map, Error Flag/Mask, etc... */
ch0mm = pci_get_device_func(PCI_VENDOR_ID_INTEL,
PCI_DEVICE_ID_INTEL_5100_21, 0);