aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/edac/highbank_l2_edac.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/edac/highbank_l2_edac.c')
-rw-r--r--drivers/edac/highbank_l2_edac.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/drivers/edac/highbank_l2_edac.c b/drivers/edac/highbank_l2_edac.c
index 10d3d298b640..2f193668ebc7 100644
--- a/drivers/edac/highbank_l2_edac.c
+++ b/drivers/edac/highbank_l2_edac.c
@@ -50,8 +50,15 @@ static irqreturn_t highbank_l2_err_handler(int irq, void *dev_id)
50 return IRQ_HANDLED; 50 return IRQ_HANDLED;
51} 51}
52 52
53static const struct of_device_id hb_l2_err_of_match[] = {
54 { .compatible = "calxeda,hb-sregs-l2-ecc", },
55 {},
56};
57MODULE_DEVICE_TABLE(of, hb_l2_err_of_match);
58
53static int highbank_l2_err_probe(struct platform_device *pdev) 59static int highbank_l2_err_probe(struct platform_device *pdev)
54{ 60{
61 const struct of_device_id *id;
55 struct edac_device_ctl_info *dci; 62 struct edac_device_ctl_info *dci;
56 struct hb_l2_drvdata *drvdata; 63 struct hb_l2_drvdata *drvdata;
57 struct resource *r; 64 struct resource *r;
@@ -90,7 +97,9 @@ static int highbank_l2_err_probe(struct platform_device *pdev)
90 goto err; 97 goto err;
91 } 98 }
92 99
93 dci->mod_name = dev_name(&pdev->dev); 100 id = of_match_device(hb_l2_err_of_match, &pdev->dev);
101 dci->mod_name = pdev->dev.driver->name;
102 dci->ctl_name = id ? id->compatible : "unknown";
94 dci->dev_name = dev_name(&pdev->dev); 103 dci->dev_name = dev_name(&pdev->dev);
95 104
96 if (edac_device_add_device(dci)) 105 if (edac_device_add_device(dci))
@@ -129,12 +138,6 @@ static int highbank_l2_err_remove(struct platform_device *pdev)
129 return 0; 138 return 0;
130} 139}
131 140
132static const struct of_device_id hb_l2_err_of_match[] = {
133 { .compatible = "calxeda,hb-sregs-l2-ecc", },
134 {},
135};
136MODULE_DEVICE_TABLE(of, hb_l2_err_of_match);
137
138static struct platform_driver highbank_l2_edac_driver = { 141static struct platform_driver highbank_l2_edac_driver = {
139 .probe = highbank_l2_err_probe, 142 .probe = highbank_l2_err_probe,
140 .remove = highbank_l2_err_remove, 143 .remove = highbank_l2_err_remove,