Lines Matching full:mci

30 #define r82600_mc_printk(mci, level, fmt, arg...) \  argument
31 edac_mc_chipset_printk(mci, level, "r82600", fmt, ##arg)
137 static void r82600_get_error_info(struct mem_ctl_info *mci, in r82600_get_error_info() argument
142 pdev = to_pci_dev(mci->pdev); in r82600_get_error_info()
158 static int r82600_process_error_info(struct mem_ctl_info *mci, in r82600_process_error_info() argument
181 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, in r82600_process_error_info()
183 edac_mc_find_csrow_by_page(mci, page), in r82600_process_error_info()
185 mci->ctl_name, ""); in r82600_process_error_info()
193 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, in r82600_process_error_info()
195 edac_mc_find_csrow_by_page(mci, page), in r82600_process_error_info()
197 mci->ctl_name, ""); in r82600_process_error_info()
203 static void r82600_check(struct mem_ctl_info *mci) in r82600_check() argument
207 r82600_get_error_info(mci, &info); in r82600_check()
208 r82600_process_error_info(mci, &info, 1); in r82600_check()
216 static void r82600_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev, in r82600_init_csrows() argument
230 for (index = 0; index < mci->nr_csrows; index++) { in r82600_init_csrows()
231 csrow = mci->csrows[index]; in r82600_init_csrows()
270 struct mem_ctl_info *mci; in r82600_probe1() local
291 mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, 0); in r82600_probe1()
292 if (mci == NULL) in r82600_probe1()
295 edac_dbg(0, "mci = %p\n", mci); in r82600_probe1()
296 mci->pdev = &pdev->dev; in r82600_probe1()
297 mci->mtype_cap = MEM_FLAG_RDDR | MEM_FLAG_DDR; in r82600_probe1()
298 mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED; in r82600_probe1()
307 mci->edac_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED; in r82600_probe1()
311 edac_dbg(3, "mci = %p - Scrubbing disabled! EAP: %#0x\n", in r82600_probe1()
312 mci, eapr); in r82600_probe1()
314 mci->edac_cap = EDAC_FLAG_NONE; in r82600_probe1()
316 mci->mod_name = EDAC_MOD_STR; in r82600_probe1()
317 mci->ctl_name = "R82600"; in r82600_probe1()
318 mci->dev_name = pci_name(pdev); in r82600_probe1()
319 mci->edac_check = r82600_check; in r82600_probe1()
320 mci->ctl_page_to_phys = NULL; in r82600_probe1()
321 r82600_init_csrows(mci, pdev, dramcr); in r82600_probe1()
322 r82600_get_error_info(mci, &discard); /* clear counters */ in r82600_probe1()
327 if (edac_mc_add_mc(mci)) { in r82600_probe1()
354 edac_mc_free(mci); in r82600_probe1()
370 struct mem_ctl_info *mci; in r82600_remove_one() local
377 if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL) in r82600_remove_one()
380 edac_mc_free(mci); in r82600_remove_one()