Lines Matching defs:mci

92 static void count_rec(struct mem_ctl_info *mci, u8 rec_cnt, u32 rec_addr)
94 struct csrow_info *csrow = mci->csrows[0];
107 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, rec_cnt-1,
118 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
124 static void count_un_rec(struct mem_ctl_info *mci, u8 un_rec_cnt,
127 struct csrow_info *csrow = mci->csrows[0];
139 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
150 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, un_rec_cnt-1,
159 struct mem_ctl_info *mci = arg;
165 dev_dbg(mci->pdev, "received edac interrupt w/ mcr register 50: 0x%x\n",
172 dev_dbg(mci->pdev, "%d recoverable interrupts and %d unrecoverable interrupts\n",
190 count_rec(mci, rec_cnt, rec_addr);
191 count_un_rec(mci, un_rec_cnt, un_rec_addr);
194 dev_dbg(mci->pdev, "received edac interrupt, but did not find any ECC counters\n");
197 dev_dbg(mci->pdev, "edac interrupt handled. mcr reg 50 is now: 0x%x\n",
231 static int init_csrows(struct mem_ctl_info *mci)
233 struct csrow_info *csrow = mci->csrows[0];
244 dev_err(mci->pdev, "dt: missing /memory node\n");
253 dev_err(mci->pdev, "dt: failed requesting resource for /memory node\n");
257 dev_dbg(mci->pdev, "dt: /memory node resources: first page r.start=0x%x, resource_size=0x%x, PAGE_SHIFT macro=0x%x\n",
272 dev_dbg(mci->pdev, "initialized dimm with first_page=0x%lx and nr_pages=0x%x\n",
283 struct mem_ctl_info *mci;
314 mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, 0);
315 if (!mci)
318 mci->pdev = &pdev->dev;
319 mci->mtype_cap = MEM_FLAG_DDR3 | MEM_FLAG_DDR4;
320 mci->edac_ctl_cap = EDAC_FLAG_SECDED;
321 mci->edac_cap = EDAC_FLAG_SECDED;
322 mci->scrub_cap = SCRUB_FLAG_HW_SRC;
323 mci->scrub_mode = SCRUB_HW_SRC;
324 mci->mod_name = DRV_NAME;
325 mci->ctl_name = "MIC";
326 mci->dev_name = dev_name(&pdev->dev);
328 rc = init_csrows(mci);
334 platform_set_drvdata(pdev, mci);
337 rc = edac_mc_add_mc(mci);
344 rc = config_irq(mci, pdev);
355 edac_mc_free(mci);
362 struct mem_ctl_info *mci;
369 mci = edac_mc_del_mc(&pdev->dev);
370 if (mci)
371 edac_mc_free(mci);