Lines Matching refs:mci

47 #define i5400_mc_printk(mci, level, fmt, arg...) \  argument
48 edac_mc_chipset_printk(mci, level, "i5400", fmt, ##arg)
435 static void i5400_get_error_info(struct mem_ctl_info *mci, in i5400_get_error_info() argument
441 pvt = mci->pvt_info; in i5400_get_error_info()
511 static void i5400_proccess_non_recoverable_info(struct mem_ctl_info *mci, in i5400_proccess_non_recoverable_info() argument
563 edac_mc_handle_error(tp_event, mci, 1, 0, 0, 0, in i5400_proccess_non_recoverable_info()
576 static void i5400_process_nonfatal_error_info(struct mem_ctl_info *mci, in i5400_process_nonfatal_error_info() argument
597 i5400_proccess_non_recoverable_info(mci, info, allErrors); in i5400_process_nonfatal_error_info()
635 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, 0, 0, 0, in i5400_process_nonfatal_error_info()
648 i5400_mc_printk(mci, KERN_EMERG, in i5400_process_nonfatal_error_info()
657 static void i5400_process_error_info(struct mem_ctl_info *mci, in i5400_process_error_info() argument
663 i5400_proccess_non_recoverable_info(mci, info, allErrors); in i5400_process_error_info()
666 i5400_process_nonfatal_error_info(mci, info); in i5400_process_error_info()
675 static void i5400_clear_error(struct mem_ctl_info *mci) in i5400_clear_error() argument
679 i5400_get_error_info(mci, &info); in i5400_clear_error()
686 static void i5400_check_error(struct mem_ctl_info *mci) in i5400_check_error() argument
689 edac_dbg(4, "MC%d\n", mci->mc_idx); in i5400_check_error()
690 i5400_get_error_info(mci, &info); in i5400_check_error()
691 i5400_process_error_info(mci, &info); in i5400_check_error()
698 static void i5400_put_devices(struct mem_ctl_info *mci) in i5400_put_devices() argument
702 pvt = mci->pvt_info; in i5400_put_devices()
717 static int i5400_get_devices(struct mem_ctl_info *mci, int dev_idx) in i5400_get_devices() argument
722 pvt = mci->pvt_info; in i5400_get_devices()
1051 static void i5400_get_mc_regs(struct mem_ctl_info *mci) in i5400_get_mc_regs() argument
1061 pvt = mci->pvt_info; in i5400_get_mc_regs()
1169 static int i5400_init_dimms(struct mem_ctl_info *mci) in i5400_init_dimms() argument
1179 pvt = mci->pvt_info; in i5400_init_dimms()
1190 for (channel = 0; channel < mci->layers[0].size * mci->layers[1].size; in i5400_init_dimms()
1192 for (slot = 0; slot < mci->layers[2].size; slot++) { in i5400_init_dimms()
1199 dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers, in i5400_init_dimms()
1227 mci->dimms[0]->edac_mode = EDAC_SECDED; in i5400_init_dimms()
1236 static void i5400_enable_error_reporting(struct mem_ctl_info *mci) in i5400_enable_error_reporting() argument
1241 pvt = mci->pvt_info; in i5400_enable_error_reporting()
1263 struct mem_ctl_info *mci; in i5400_probe1() local
1292 mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt)); in i5400_probe1()
1293 if (mci == NULL) in i5400_probe1()
1296 edac_dbg(0, "MC: mci = %p\n", mci); in i5400_probe1()
1298 mci->pdev = &pdev->dev; /* record ptr to the generic device */ in i5400_probe1()
1300 pvt = mci->pvt_info; in i5400_probe1()
1306 if (i5400_get_devices(mci, dev_idx)) in i5400_probe1()
1310 i5400_get_mc_regs(mci); /* retrieve the hardware registers */ in i5400_probe1()
1312 mci->mc_idx = 0; in i5400_probe1()
1313 mci->mtype_cap = MEM_FLAG_FB_DDR2; in i5400_probe1()
1314 mci->edac_ctl_cap = EDAC_FLAG_NONE; in i5400_probe1()
1315 mci->edac_cap = EDAC_FLAG_NONE; in i5400_probe1()
1316 mci->mod_name = "i5400_edac.c"; in i5400_probe1()
1317 mci->mod_ver = I5400_REVISION; in i5400_probe1()
1318 mci->ctl_name = i5400_devs[dev_idx].ctl_name; in i5400_probe1()
1319 mci->dev_name = pci_name(pdev); in i5400_probe1()
1320 mci->ctl_page_to_phys = NULL; in i5400_probe1()
1323 mci->edac_check = i5400_check_error; in i5400_probe1()
1327 if (i5400_init_dimms(mci)) { in i5400_probe1()
1329 mci->edac_cap = EDAC_FLAG_NONE; /* no dimms found */ in i5400_probe1()
1332 i5400_enable_error_reporting(mci); in i5400_probe1()
1336 if (edac_mc_add_mc(mci)) { in i5400_probe1()
1344 i5400_clear_error(mci); in i5400_probe1()
1362 i5400_put_devices(mci); in i5400_probe1()
1365 edac_mc_free(mci); in i5400_probe1()
1397 struct mem_ctl_info *mci; in i5400_remove_one() local
1404 mci = edac_mc_del_mc(&pdev->dev); in i5400_remove_one()
1405 if (!mci) in i5400_remove_one()
1409 i5400_put_devices(mci); in i5400_remove_one()
1413 edac_mc_free(mci); in i5400_remove_one()