Lines Matching refs:imc

138 		res->imc     = (adxl_nm_bitmap & BIT_NM_MEMCTRL) ?  in skx_adxl_decode()
147 res->imc = (int)adxl_values[component_indices[INDEX_MEMCTRL]]; in skx_adxl_decode()
153 if (res->imc > NUM_IMC - 1 || res->imc < 0) { in skx_adxl_decode()
154 skx_printk(KERN_ERR, "Bad imc %d\n", res->imc); in skx_adxl_decode()
159 if (d->imc[0].src_id == res->socket) { in skx_adxl_decode()
167 res->socket, res->imc); in skx_adxl_decode()
344 struct skx_imc *imc, int chan, int dimmno, in skx_get_dimm_info() argument
353 cols = imc->hbm_mc ? 6 : numcol(mtr); in skx_get_dimm_info()
355 if (imc->hbm_mc) { in skx_get_dimm_info()
373 imc->mc, chan, dimmno, size, npages, in skx_get_dimm_info()
376 imc->chan[chan].dimms[dimmno].close_pg = GET_BITFIELD(mcmtr, 0, 0); in skx_get_dimm_info()
377 imc->chan[chan].dimms[dimmno].bank_xor_enable = GET_BITFIELD(mcmtr, 9, 9); in skx_get_dimm_info()
378 imc->chan[chan].dimms[dimmno].fine_grain_bank = GET_BITFIELD(amap, 0, 0); in skx_get_dimm_info()
379 imc->chan[chan].dimms[dimmno].rowbits = rows; in skx_get_dimm_info()
380 imc->chan[chan].dimms[dimmno].colbits = cols; in skx_get_dimm_info()
388 if (imc->hbm_mc) in skx_get_dimm_info()
390 imc->src_id, imc->lmc, chan); in skx_get_dimm_info()
393 imc->src_id, imc->lmc, chan, dimmno); in skx_get_dimm_info()
398 int skx_get_nvdimm_info(struct dimm_info *dimm, struct skx_imc *imc, in skx_get_nvdimm_info() argument
406 dev_handle = ACPI_NFIT_BUILD_DEVICE_HANDLE(dimmno, chan, imc->lmc, in skx_get_nvdimm_info()
407 imc->src_id, 0); in skx_get_nvdimm_info()
438 imc->mc, chan, dimmno, size >> 20, dimm->nr_pages); in skx_get_nvdimm_info()
441 imc->src_id, imc->lmc, chan, dimmno); in skx_get_nvdimm_info()
446 int skx_register_mci(struct skx_imc *imc, struct pci_dev *pdev, in skx_register_mci() argument
463 mci = edac_mc_alloc(imc->mc, ARRAY_SIZE(layers), layers, in skx_register_mci()
469 edac_dbg(0, "MC#%d: mci = %p\n", imc->mc, mci); in skx_register_mci()
472 imc->mci = mci; in skx_register_mci()
474 pvt->imc = imc; in skx_register_mci()
477 imc->node_id, imc->lmc); in skx_register_mci()
512 imc->mci = NULL; in skx_register_mci()
516 static void skx_unregister_mci(struct skx_imc *imc) in skx_unregister_mci() argument
518 struct mem_ctl_info *mci = imc->mci; in skx_unregister_mci()
523 edac_dbg(0, "MC%d: mci = %p\n", imc->mc, mci); in skx_unregister_mci()
612 res->socket, res->imc, res->rank, in skx_mce_output_error()
669 mci = res.dev->imc[res.imc].mci; in skx_mce_check_error()
708 if (d->imc[i].mci) in skx_remove()
709 skx_unregister_mci(&d->imc[i]); in skx_remove()
711 if (d->imc[i].mdev) in skx_remove()
712 pci_dev_put(d->imc[i].mdev); in skx_remove()
714 if (d->imc[i].mbase) in skx_remove()
715 iounmap(d->imc[i].mbase); in skx_remove()
718 if (d->imc[i].chan[j].cdev) in skx_remove()
719 pci_dev_put(d->imc[i].chan[j].cdev); in skx_remove()