Lines Matching refs:mci

63 	struct mem_ctl_info *mci = to_mci(dev);
64 struct fsl_mc_pdata *pdata = mci->pvt_info;
73 struct mem_ctl_info *mci = to_mci(dev);
74 struct fsl_mc_pdata *pdata = mci->pvt_info;
83 struct mem_ctl_info *mci = to_mci(dev);
84 struct fsl_mc_pdata *pdata = mci->pvt_info;
93 struct mem_ctl_info *mci = to_mci(dev);
94 struct fsl_mc_pdata *pdata = mci->pvt_info;
113 struct mem_ctl_info *mci = to_mci(dev);
114 struct fsl_mc_pdata *pdata = mci->pvt_info;
133 struct mem_ctl_info *mci = to_mci(dev);
134 struct fsl_mc_pdata *pdata = mci->pvt_info;
277 static void fsl_mc_check(struct mem_ctl_info *mci)
279 struct fsl_mc_pdata *pdata = mci->pvt_info;
296 fsl_mc_printk(mci, KERN_ERR, "Err Detect Register: %#8.8x\n",
320 for (row_index = 0; row_index < mci->nr_csrows; row_index++) {
321 csrow = mci->csrows[row_index];
338 fsl_mc_printk(mci, KERN_ERR,
341 fsl_mc_printk(mci, KERN_ERR,
344 fsl_mc_printk(mci, KERN_ERR,
351 fsl_mc_printk(mci, KERN_ERR,
354 fsl_mc_printk(mci, KERN_ERR, "Err addr: %#8.8llx\n", err_addr);
355 fsl_mc_printk(mci, KERN_ERR, "PFN: %#8.8x\n", pfn);
358 if (row_index == mci->nr_csrows)
359 fsl_mc_printk(mci, KERN_ERR, "PFN out of range!\n");
362 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
365 mci->ctl_name, "");
368 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
371 mci->ctl_name, "");
378 struct mem_ctl_info *mci = dev_id;
379 struct fsl_mc_pdata *pdata = mci->pvt_info;
386 fsl_mc_check(mci);
391 static void fsl_ddr_init_csrows(struct mem_ctl_info *mci)
393 struct fsl_mc_pdata *pdata = mci->pvt_info;
443 for (index = 0; index < mci->nr_csrows; index++) {
447 csrow = mci->csrows[index];
478 struct mem_ctl_info *mci;
494 mci = edac_mc_alloc(edac_mc_idx, ARRAY_SIZE(layers), layers,
496 if (!mci) {
501 pdata = mci->pvt_info;
503 mci->pdev = &op->dev;
505 dev_set_drvdata(mci->pdev, mci);
506 mci->ctl_name = pdata->name;
507 mci->dev_name = pdata->name;
545 edac_dbg(3, "init mci\n");
546 mci->mtype_cap = MEM_FLAG_DDR | MEM_FLAG_RDDR |
550 mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
551 mci->edac_cap = EDAC_FLAG_SECDED;
552 mci->mod_name = EDAC_MOD_STR;
555 mci->edac_check = fsl_mc_check;
557 mci->ctl_page_to_phys = NULL;
559 mci->scrub_mode = SCRUB_SW_SRC;
561 fsl_ddr_init_csrows(mci);
570 res = edac_mc_add_mc_with_groups(mci, fsl_ddr_dev_groups);
592 "[EDAC] MC err", mci);
614 edac_mc_free(mci);
620 struct mem_ctl_info *mci = dev_get_drvdata(&op->dev);
621 struct fsl_mc_pdata *pdata = mci->pvt_info;
634 edac_mc_free(mci);