X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;ds=sidebyside;f=drivers%2Fedac%2Fpasemi_edac.c;h=8e6b91bd2e99994525cba93fbdaac6750ec6da23;hb=ccdb357ccb77cc4cbe4f7abee9efd19957f0753a;hp=4fcf23b61d8e44bdb9ae29a88e3704a6203110fe;hpb=7d8536fb484360f35c0a9e3631641948bf168e2b;p=safe%2Fjmp%2Flinux-2.6 diff --git a/drivers/edac/pasemi_edac.c b/drivers/edac/pasemi_edac.c index 4fcf23b..8e6b91b 100644 --- a/drivers/edac/pasemi_edac.c +++ b/drivers/edac/pasemi_edac.c @@ -26,6 +26,7 @@ #include #include #include +#include #include "edac_core.h" #define MODULE_NAME "pasemi_edac" @@ -205,7 +206,8 @@ static int __devinit pasemi_edac_probe(struct pci_dev *pdev, MCDEBUG_ERRCTL1_RFL_LOG_EN; pci_write_config_dword(pdev, MCDEBUG_ERRCTL1, errctl1); - mci = edac_mc_alloc(0, PASEMI_EDAC_NR_CSROWS, PASEMI_EDAC_NR_CHANS); + mci = edac_mc_alloc(0, PASEMI_EDAC_NR_CSROWS, PASEMI_EDAC_NR_CHANS, + system_mmc_id++); if (mci == NULL) return -ENOMEM; @@ -224,7 +226,7 @@ static int __devinit pasemi_edac_probe(struct pci_dev *pdev, EDAC_FLAG_NONE; mci->mod_name = MODULE_NAME; mci->dev_name = pci_name(pdev); - mci->ctl_name = "pasemi,1682m-mc"; + mci->ctl_name = "pasemi,pwrficient-mc"; mci->edac_check = pasemi_edac_check; mci->ctl_page_to_phys = NULL; pci_read_config_dword(pdev, MCCFG_SCRUB, &scrub); @@ -245,7 +247,7 @@ static int __devinit pasemi_edac_probe(struct pci_dev *pdev, */ pasemi_edac_get_error_info(mci); - if (edac_mc_add_mc(mci, system_mmc_id++)) + if (edac_mc_add_mc(mci)) goto fail; /* get this far and it's successful */ @@ -269,6 +271,7 @@ static void __devexit pasemi_edac_remove(struct pci_dev *pdev) static const struct pci_device_id pasemi_edac_pci_tbl[] = { { PCI_DEVICE(PCI_VENDOR_ID_PASEMI, 0xa00a) }, + { } }; MODULE_DEVICE_TABLE(pci, pasemi_edac_pci_tbl); @@ -282,6 +285,9 @@ static struct pci_driver pasemi_edac_driver = { static int __init pasemi_edac_init(void) { + /* Ensure that the OPSTATE is set correctly for POLL or NMI */ + opstate_init(); + return pci_register_driver(&pasemi_edac_driver); } @@ -295,4 +301,7 @@ module_exit(pasemi_edac_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Egor Martovetsky "); -MODULE_DESCRIPTION("MC support for PA Semi PA6T-1682M memory controller"); +MODULE_DESCRIPTION("MC support for PA Semi PWRficient memory controller"); +module_param(edac_op_state, int, 0444); +MODULE_PARM_DESC(edac_op_state, "EDAC Error Reporting state: 0=Poll,1=NMI"); +