EDAC, altera: Abstract ECC Enable Mask in check_deps()
authorThor Thayer <tthayer@opensource.altera.com>
Mon, 21 Mar 2016 16:01:41 +0000 (11:01 -0500)
committerBorislav Petkov <bp@suse.de>
Tue, 29 Mar 2016 08:17:32 +0000 (10:17 +0200)
In preparation for the Arria10 peripheral ECCs, use the ECC Enable mask
in place of hard coded masks in the check dependency functions.

Signed-off-by: Thor Thayer <tthayer@opensource.altera.com>
Cc: devicetree@vger.kernel.org
Cc: dinguyen@opensource.altera.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux@arm.linux.org.uk
Cc: linux-edac <linux-edac@vger.kernel.org>
Link: http://lkml.kernel.org/r/1458576106-24505-5-git-send-email-tthayer@opensource.altera.com
Signed-off-by: Borislav Petkov <bp@suse.de>
drivers/edac/altera_edac.c

index e20a045cbf209b3c73121aa53ca55a216515537e..0dbfa473f853d75aa0c129abe57895780927b05d 100644 (file)
@@ -859,7 +859,9 @@ static void ocram_free_mem(void *p, size_t size, void *other)
 static int altr_ocram_check_deps(struct altr_edac_device_dev *device)
 {
        void __iomem  *base = device->base;
-       if (readl(base) & ALTR_OCR_ECC_EN)
+       const struct edac_device_prv_data *prv = device->data;
+
+       if (readl(base) & prv->ecc_enable_mask)
                return 0;
 
        edac_printk(KERN_ERR, EDAC_DEVICE,
@@ -926,7 +928,10 @@ static void l2_free_mem(void *p, size_t size, void *other)
 static int altr_l2_check_deps(struct altr_edac_device_dev *device)
 {
        void __iomem *base = device->base;
-       if (readl(base) & ALTR_L2_ECC_EN)
+       const struct edac_device_prv_data *prv = device->data;
+
+       if ((readl(base) & prv->ecc_enable_mask) ==
+            prv->ecc_enable_mask)
                return 0;
 
        edac_printk(KERN_ERR, EDAC_DEVICE,