mci               191 arch/s390/kernel/nmi.c static int notrace s390_check_registers(union mci mci, int umode)
mci               198 arch/s390/kernel/nmi.c 	if (!mci.gr) {
mci               208 arch/s390/kernel/nmi.c 	if (!mci.cr) {
mci               215 arch/s390/kernel/nmi.c 	if (!mci.fp) {
mci               227 arch/s390/kernel/nmi.c 	if (!mci.fc) {
mci               242 arch/s390/kernel/nmi.c 		if (!mci.vr) {
mci               256 arch/s390/kernel/nmi.c 	if (!mci.ar) {
mci               266 arch/s390/kernel/nmi.c 		if (!mci.gs) {
mci               276 arch/s390/kernel/nmi.c 	if (!mci.wp) {
mci               284 arch/s390/kernel/nmi.c 	if (!mci.ia && !umode) {
mci               292 arch/s390/kernel/nmi.c 	if (!mci.ms || !mci.pm || !mci.ia)
mci               343 arch/s390/kernel/nmi.c 	union mci mci;
mci               348 arch/s390/kernel/nmi.c 	mci.val = S390_lowcore.mcck_interruption_code;
mci               351 arch/s390/kernel/nmi.c 	if (mci.sd) {
mci               361 arch/s390/kernel/nmi.c 	if (mci.pd && !test_cpu_flag(CIF_MCCK_GUEST)) {
mci               362 arch/s390/kernel/nmi.c 		if (mci.b) {
mci               370 arch/s390/kernel/nmi.c 			t_mcic = mci.val;
mci               396 arch/s390/kernel/nmi.c 	if (s390_check_registers(mci, user_mode(regs))) {
mci               402 arch/s390/kernel/nmi.c 		mcck->mcck_code = mci.val;
mci               413 arch/s390/kernel/nmi.c 	if (mci.cd) {
mci               417 arch/s390/kernel/nmi.c 	if (mci.ed && mci.ec) {
mci               432 arch/s390/kernel/nmi.c 		if (mci.se)
mci               435 arch/s390/kernel/nmi.c 		if (mci.ke)
mci               438 arch/s390/kernel/nmi.c 		if (mci.ds && mci.fa)
mci               442 arch/s390/kernel/nmi.c 	if (mci.cp) {
mci               447 arch/s390/kernel/nmi.c 	if (mci.w) {
mci               458 arch/s390/kernel/nmi.c 	mcck_dam_code = (mci.val & MCIC_SUBCLASS_MASK);
mci               553 arch/s390/kvm/interrupt.c 	union mci mci;
mci               556 arch/s390/kvm/interrupt.c 	mci.val = mchk->mcic;
mci               588 arch/s390/kvm/interrupt.c 	if (!rc && mci.vr && ext_sa_addr && test_kvm_facility(vcpu->kvm, 129)) {
mci               591 arch/s390/kvm/interrupt.c 			mci.vr = 0;
mci               593 arch/s390/kvm/interrupt.c 		mci.vr = 0;
mci               595 arch/s390/kvm/interrupt.c 	if (!rc && mci.gs && ext_sa_addr && test_kvm_facility(vcpu->kvm, 133)
mci               599 arch/s390/kvm/interrupt.c 			mci.gs = 0;
mci               601 arch/s390/kvm/interrupt.c 		mci.gs = 0;
mci               610 arch/s390/kvm/interrupt.c 	rc |= put_guest_lc(vcpu, mci.val, (u64 __user *) __LC_MCCK_CODE);
mci              2789 arch/s390/kvm/interrupt.c 	union mci mci;
mci              2793 arch/s390/kvm/interrupt.c 	mci.val = mcck_info->mcic;
mci              2794 arch/s390/kvm/interrupt.c 	if (mci.sr)
mci              2796 arch/s390/kvm/interrupt.c 	if (mci.dg)
mci              2798 arch/s390/kvm/interrupt.c 	if (mci.w)
mci              2801 arch/s390/kvm/interrupt.c 	mchk = mci.ck ? &inti.mchk : &irq.u.mchk;
mci              2806 arch/s390/kvm/interrupt.c 	if (mci.ck) {
mci                80 drivers/edac/altera_edac.c 	struct mem_ctl_info *mci = dev_id;
mci                81 drivers/edac/altera_edac.c 	struct altr_sdram_mc_data *drvdata = mci->pvt_info;
mci               102 drivers/edac/altera_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, err_count,
mci               105 drivers/edac/altera_edac.c 				     0, 0, -1, mci->ctl_name, "");
mci               119 drivers/edac/altera_edac.c 	struct mem_ctl_info *mci = file->private_data;
mci               120 drivers/edac/altera_edac.c 	struct altr_sdram_mc_data *drvdata = mci->pvt_info;
mci               126 drivers/edac/altera_edac.c 	ptemp = dma_alloc_coherent(mci->pdev, 16, &dma_handle, GFP_KERNEL);
mci               128 drivers/edac/altera_edac.c 		dma_free_coherent(mci->pdev, 16, ptemp, dma_handle);
mci               180 drivers/edac/altera_edac.c 	dma_free_coherent(mci->pdev, 16, ptemp, dma_handle);
mci               191 drivers/edac/altera_edac.c static void altr_sdr_mc_create_debugfs_nodes(struct mem_ctl_info *mci)
mci               196 drivers/edac/altera_edac.c 	if (!mci->debugfs)
mci               199 drivers/edac/altera_edac.c 	edac_debugfs_create_file("altr_trigger", S_IWUSR, mci->debugfs, mci,
mci               283 drivers/edac/altera_edac.c 	struct mem_ctl_info *mci;
mci               364 drivers/edac/altera_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers,
mci               366 drivers/edac/altera_edac.c 	if (!mci)
mci               369 drivers/edac/altera_edac.c 	mci->pdev = &pdev->dev;
mci               370 drivers/edac/altera_edac.c 	drvdata = mci->pvt_info;
mci               373 drivers/edac/altera_edac.c 	platform_set_drvdata(pdev, mci);
mci               382 drivers/edac/altera_edac.c 	mci->mtype_cap = MEM_FLAG_DDR3;
mci               383 drivers/edac/altera_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               384 drivers/edac/altera_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               385 drivers/edac/altera_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               386 drivers/edac/altera_edac.c 	mci->ctl_name = dev_name(&pdev->dev);
mci               387 drivers/edac/altera_edac.c 	mci->scrub_mode = SCRUB_SW_SRC;
mci               388 drivers/edac/altera_edac.c 	mci->dev_name = dev_name(&pdev->dev);
mci               390 drivers/edac/altera_edac.c 	dimm = *mci->dimms;
mci               397 drivers/edac/altera_edac.c 	res = edac_mc_add_mc(mci);
mci               410 drivers/edac/altera_edac.c 				       IRQF_SHARED, dev_name(&pdev->dev), mci);
mci               412 drivers/edac/altera_edac.c 			edac_mc_printk(mci, KERN_ERR,
mci               426 drivers/edac/altera_edac.c 			       irqflags, dev_name(&pdev->dev), mci);
mci               428 drivers/edac/altera_edac.c 		edac_mc_printk(mci, KERN_ERR,
mci               437 drivers/edac/altera_edac.c 		edac_mc_printk(mci, KERN_ERR,
mci               443 drivers/edac/altera_edac.c 	altr_sdr_mc_create_debugfs_nodes(mci);
mci               454 drivers/edac/altera_edac.c 	edac_mc_free(mci);
mci               463 drivers/edac/altera_edac.c 	struct mem_ctl_info *mci = platform_get_drvdata(pdev);
mci               466 drivers/edac/altera_edac.c 	edac_mc_free(mci);
mci               235 drivers/edac/amd64_edac.c static int set_scrub_rate(struct mem_ctl_info *mci, u32 bw)
mci               237 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci               254 drivers/edac/amd64_edac.c static int get_scrub_rate(struct mem_ctl_info *mci)
mci               256 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci               324 drivers/edac/amd64_edac.c static struct mem_ctl_info *find_mc_by_sys_addr(struct mem_ctl_info *mci,
mci               335 drivers/edac/amd64_edac.c 	pvt = mci->pvt_info;
mci               463 drivers/edac/amd64_edac.c static int input_addr_to_csrow(struct mem_ctl_info *mci, u64 input_addr)
mci               469 drivers/edac/amd64_edac.c 	pvt = mci->pvt_info;
mci               509 drivers/edac/amd64_edac.c int amd64_get_dram_hole_info(struct mem_ctl_info *mci, u64 *hole_base,
mci               512 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci               594 drivers/edac/amd64_edac.c static u64 sys_addr_to_dram_addr(struct mem_ctl_info *mci, u64 sys_addr)
mci               596 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci               602 drivers/edac/amd64_edac.c 	ret = amd64_get_dram_hole_info(mci, &hole_base, &hole_offset,
mci               650 drivers/edac/amd64_edac.c static u64 dram_addr_to_input_addr(struct mem_ctl_info *mci, u64 dram_addr)
mci               656 drivers/edac/amd64_edac.c 	pvt = mci->pvt_info;
mci               677 drivers/edac/amd64_edac.c static u64 sys_addr_to_input_addr(struct mem_ctl_info *mci, u64 sys_addr)
mci               682 drivers/edac/amd64_edac.c 	    dram_addr_to_input_addr(mci, sys_addr_to_dram_addr(mci, sys_addr));
mci               706 drivers/edac/amd64_edac.c static int sys_addr_to_csrow(struct mem_ctl_info *mci, u64 sys_addr)
mci               710 drivers/edac/amd64_edac.c 	csrow = input_addr_to_csrow(mci, sys_addr_to_input_addr(mci, sys_addr));
mci               713 drivers/edac/amd64_edac.c 		amd64_mc_err(mci, "Failed to translate InputAddr to csrow for "
mci              1146 drivers/edac/amd64_edac.c 	struct mem_ctl_info *mci;
mci              1151 drivers/edac/amd64_edac.c 	mci = edac_mc_find(mce_nid);
mci              1152 drivers/edac/amd64_edac.c 	if (!mci)
mci              1155 drivers/edac/amd64_edac.c 	pvt = mci->pvt_info;
mci              1278 drivers/edac/amd64_edac.c static void k8_map_sysaddr_to_csrow(struct mem_ctl_info *mci, u64 sys_addr,
mci              1281 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci              1289 drivers/edac/amd64_edac.c 	err->src_mci = find_mc_by_sys_addr(mci, sys_addr);
mci              1291 drivers/edac/amd64_edac.c 		amd64_mc_err(mci, "failed to map error addr 0x%lx to a node\n",
mci              1306 drivers/edac/amd64_edac.c 		err->channel = get_channel_from_ecc_syndrome(mci, err->syndrome);
mci              1827 drivers/edac/amd64_edac.c 	struct mem_ctl_info *mci;
mci              1833 drivers/edac/amd64_edac.c 	mci = edac_mc_find(nid);
mci              1834 drivers/edac/amd64_edac.c 	if (!mci)
mci              1837 drivers/edac/amd64_edac.c 	pvt = mci->pvt_info;
mci              2140 drivers/edac/amd64_edac.c static void f1x_map_sysaddr_to_csrow(struct mem_ctl_info *mci, u64 sys_addr,
mci              2143 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci              2159 drivers/edac/amd64_edac.c 		err->channel = get_channel_from_ecc_syndrome(mci, err->syndrome);
mci              2474 drivers/edac/amd64_edac.c static int get_channel_from_ecc_syndrome(struct mem_ctl_info *mci, u16 syndrome)
mci              2476 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci              2495 drivers/edac/amd64_edac.c static void __log_ecc_error(struct mem_ctl_info *mci, struct err_info *err,
mci              2536 drivers/edac/amd64_edac.c 	edac_mc_handle_error(err_type, mci, 1,
mci              2544 drivers/edac/amd64_edac.c 	struct mem_ctl_info *mci;
mci              2552 drivers/edac/amd64_edac.c 	mci = edac_mc_find(node_id);
mci              2553 drivers/edac/amd64_edac.c 	if (!mci)
mci              2556 drivers/edac/amd64_edac.c 	pvt = mci->pvt_info;
mci              2573 drivers/edac/amd64_edac.c 	pvt->ops->map_sysaddr_to_csrow(mci, sys_addr, &err);
mci              2575 drivers/edac/amd64_edac.c 	__log_ecc_error(mci, &err, ecc_type);
mci              2595 drivers/edac/amd64_edac.c 	struct mem_ctl_info *mci;
mci              2600 drivers/edac/amd64_edac.c 	mci = edac_mc_find(node_id);
mci              2601 drivers/edac/amd64_edac.c 	if (!mci)
mci              2604 drivers/edac/amd64_edac.c 	pvt = mci->pvt_info;
mci              2637 drivers/edac/amd64_edac.c 	__log_ecc_error(mci, &err, ecc_type);
mci              2902 drivers/edac/amd64_edac.c static int init_csrows_df(struct mem_ctl_info *mci)
mci              2904 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci              2911 drivers/edac/amd64_edac.c 	if (mci->edac_ctl_cap & EDAC_FLAG_S16ECD16ED) {
mci              2914 drivers/edac/amd64_edac.c 	} else if (mci->edac_ctl_cap & EDAC_FLAG_S8ECD8ED) {
mci              2917 drivers/edac/amd64_edac.c 	} else if (mci->edac_ctl_cap & EDAC_FLAG_S4ECD4ED) {
mci              2920 drivers/edac/amd64_edac.c 	} else if (mci->edac_ctl_cap & EDAC_FLAG_SECDED) {
mci              2930 drivers/edac/amd64_edac.c 			dimm = mci->csrows[cs]->channels[umc]->dimm;
mci              2950 drivers/edac/amd64_edac.c static int init_csrows(struct mem_ctl_info *mci)
mci              2952 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci              2961 drivers/edac/amd64_edac.c 		return init_csrows_df(mci);
mci              2984 drivers/edac/amd64_edac.c 		csrow = mci->csrows[i];
mci              3253 drivers/edac/amd64_edac.c f17h_determine_edac_ctl_cap(struct mem_ctl_info *mci, struct amd64_pvt *pvt)
mci              3269 drivers/edac/amd64_edac.c 		mci->edac_ctl_cap |= EDAC_FLAG_SECDED;
mci              3275 drivers/edac/amd64_edac.c 			mci->edac_ctl_cap |= EDAC_FLAG_S4ECD4ED;
mci              3277 drivers/edac/amd64_edac.c 			mci->edac_ctl_cap |= EDAC_FLAG_S16ECD16ED;
mci              3279 drivers/edac/amd64_edac.c 			mci->edac_ctl_cap |= EDAC_FLAG_S8ECD8ED;
mci              3283 drivers/edac/amd64_edac.c static void setup_mci_misc_attrs(struct mem_ctl_info *mci,
mci              3286 drivers/edac/amd64_edac.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci              3288 drivers/edac/amd64_edac.c 	mci->mtype_cap		= MEM_FLAG_DDR2 | MEM_FLAG_RDDR2;
mci              3289 drivers/edac/amd64_edac.c 	mci->edac_ctl_cap	= EDAC_FLAG_NONE;
mci              3292 drivers/edac/amd64_edac.c 		f17h_determine_edac_ctl_cap(mci, pvt);
mci              3295 drivers/edac/amd64_edac.c 			mci->edac_ctl_cap |= EDAC_FLAG_SECDED;
mci              3298 drivers/edac/amd64_edac.c 			mci->edac_ctl_cap |= EDAC_FLAG_S4ECD4ED;
mci              3301 drivers/edac/amd64_edac.c 	mci->edac_cap		= determine_edac_cap(pvt);
mci              3302 drivers/edac/amd64_edac.c 	mci->mod_name		= EDAC_MOD_STR;
mci              3303 drivers/edac/amd64_edac.c 	mci->ctl_name		= fam->ctl_name;
mci              3304 drivers/edac/amd64_edac.c 	mci->dev_name		= pci_name(pvt->F3);
mci              3305 drivers/edac/amd64_edac.c 	mci->ctl_page_to_phys	= NULL;
mci              3308 drivers/edac/amd64_edac.c 	mci->set_sdram_scrub_rate = set_scrub_rate;
mci              3309 drivers/edac/amd64_edac.c 	mci->get_sdram_scrub_rate = get_scrub_rate;
mci              3426 drivers/edac/amd64_edac.c 	struct mem_ctl_info *mci = NULL;
mci              3495 drivers/edac/amd64_edac.c 	mci = edac_mc_alloc(nid, ARRAY_SIZE(layers), layers, 0);
mci              3496 drivers/edac/amd64_edac.c 	if (!mci)
mci              3499 drivers/edac/amd64_edac.c 	mci->pvt_info = pvt;
mci              3500 drivers/edac/amd64_edac.c 	mci->pdev = &pvt->F3->dev;
mci              3502 drivers/edac/amd64_edac.c 	setup_mci_misc_attrs(mci, fam_type);
mci              3504 drivers/edac/amd64_edac.c 	if (init_csrows(mci))
mci              3505 drivers/edac/amd64_edac.c 		mci->edac_cap = EDAC_FLAG_NONE;
mci              3508 drivers/edac/amd64_edac.c 	if (edac_mc_add_mc_with_groups(mci, amd64_edac_attr_groups)) {
mci              3516 drivers/edac/amd64_edac.c 	edac_mc_free(mci);
mci              3585 drivers/edac/amd64_edac.c 	struct mem_ctl_info *mci;
mci              3588 drivers/edac/amd64_edac.c 	mci = find_mci_by_dev(&F3->dev);
mci              3589 drivers/edac/amd64_edac.c 	WARN_ON(!mci);
mci              3592 drivers/edac/amd64_edac.c 	mci = edac_mc_del_mc(&F3->dev);
mci              3593 drivers/edac/amd64_edac.c 	if (!mci)
mci              3596 drivers/edac/amd64_edac.c 	pvt = mci->pvt_info;
mci              3606 drivers/edac/amd64_edac.c 	mci->pvt_info = NULL;
mci              3609 drivers/edac/amd64_edac.c 	edac_mc_free(mci);
mci              3614 drivers/edac/amd64_edac.c 	struct mem_ctl_info *mci;
mci              3620 drivers/edac/amd64_edac.c 	mci = edac_mc_find(0);
mci              3621 drivers/edac/amd64_edac.c 	if (!mci)
mci              3624 drivers/edac/amd64_edac.c 	pvt = mci->pvt_info;
mci                33 drivers/edac/amd64_edac.h #define amd64_mc_warn(mci, fmt, arg...) \
mci                34 drivers/edac/amd64_edac.h 	edac_mc_chipset_printk(mci, KERN_WARNING, "amd64", fmt, ##arg)
mci                36 drivers/edac/amd64_edac.h #define amd64_mc_err(mci, fmt, arg...) \
mci                37 drivers/edac/amd64_edac.h 	edac_mc_chipset_printk(mci, KERN_ERR, "amd64", fmt, ##arg)
mci               473 drivers/edac/amd64_edac.h 	void (*map_sysaddr_to_csrow)	(struct mem_ctl_info *mci, u64 sys_addr,
mci               496 drivers/edac/amd64_edac.h int amd64_get_dram_hole_info(struct mem_ctl_info *mci, u64 *hole_base,
mci                 9 drivers/edac/amd64_edac_dbg.c 	struct mem_ctl_info *mci = to_mci(dev);				\
mci                10 drivers/edac/amd64_edac_dbg.c 	struct amd64_pvt *pvt = mci->pvt_info;				\
mci                23 drivers/edac/amd64_edac_dbg.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                29 drivers/edac/amd64_edac_dbg.c 	amd64_get_dram_hole_info(mci, &hole_base, &hole_offset, &hole_size);
mci                 8 drivers/edac/amd64_edac_inj.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                 9 drivers/edac/amd64_edac_inj.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci                23 drivers/edac/amd64_edac_inj.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                24 drivers/edac/amd64_edac_inj.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci                45 drivers/edac/amd64_edac_inj.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                46 drivers/edac/amd64_edac_inj.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci                60 drivers/edac/amd64_edac_inj.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                61 drivers/edac/amd64_edac_inj.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci                82 drivers/edac/amd64_edac_inj.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                83 drivers/edac/amd64_edac_inj.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci                96 drivers/edac/amd64_edac_inj.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                97 drivers/edac/amd64_edac_inj.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci               122 drivers/edac/amd64_edac_inj.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               123 drivers/edac/amd64_edac_inj.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci               155 drivers/edac/amd64_edac_inj.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               156 drivers/edac/amd64_edac_inj.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci               224 drivers/edac/amd64_edac_inj.c 	struct mem_ctl_info *mci = container_of(dev, struct mem_ctl_info, dev);
mci               225 drivers/edac/amd64_edac_inj.c 	struct amd64_pvt *pvt = mci->pvt_info;
mci                27 drivers/edac/amd76x_edac.c #define amd76x_mc_printk(mci, level, fmt, arg...) \
mci                28 drivers/edac/amd76x_edac.c 	edac_mc_chipset_printk(mci, level, "amd76x", fmt, ##arg)
mci               102 drivers/edac/amd76x_edac.c static void amd76x_get_error_info(struct mem_ctl_info *mci,
mci               107 drivers/edac/amd76x_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               130 drivers/edac/amd76x_edac.c static int amd76x_process_error_info(struct mem_ctl_info *mci,
mci               147 drivers/edac/amd76x_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               148 drivers/edac/amd76x_edac.c 					     mci->csrows[row]->first_page, 0, 0,
mci               150 drivers/edac/amd76x_edac.c 					     mci->ctl_name, "");
mci               162 drivers/edac/amd76x_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               163 drivers/edac/amd76x_edac.c 					     mci->csrows[row]->first_page, 0, 0,
mci               165 drivers/edac/amd76x_edac.c 					     mci->ctl_name, "");
mci               179 drivers/edac/amd76x_edac.c static void amd76x_check(struct mem_ctl_info *mci)
mci               183 drivers/edac/amd76x_edac.c 	amd76x_get_error_info(mci, &info);
mci               184 drivers/edac/amd76x_edac.c 	amd76x_process_error_info(mci, &info, 1);
mci               187 drivers/edac/amd76x_edac.c static void amd76x_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev,
mci               195 drivers/edac/amd76x_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               196 drivers/edac/amd76x_edac.c 		csrow = mci->csrows[index];
mci               237 drivers/edac/amd76x_edac.c 	struct mem_ctl_info *mci;
mci               253 drivers/edac/amd76x_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, 0);
mci               255 drivers/edac/amd76x_edac.c 	if (mci == NULL)
mci               258 drivers/edac/amd76x_edac.c 	edac_dbg(0, "mci = %p\n", mci);
mci               259 drivers/edac/amd76x_edac.c 	mci->pdev = &pdev->dev;
mci               260 drivers/edac/amd76x_edac.c 	mci->mtype_cap = MEM_FLAG_RDDR;
mci               261 drivers/edac/amd76x_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED;
mci               262 drivers/edac/amd76x_edac.c 	mci->edac_cap = ems_mode ?
mci               264 drivers/edac/amd76x_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               265 drivers/edac/amd76x_edac.c 	mci->ctl_name = amd76x_devs[dev_idx].ctl_name;
mci               266 drivers/edac/amd76x_edac.c 	mci->dev_name = pci_name(pdev);
mci               267 drivers/edac/amd76x_edac.c 	mci->edac_check = amd76x_check;
mci               268 drivers/edac/amd76x_edac.c 	mci->ctl_page_to_phys = NULL;
mci               270 drivers/edac/amd76x_edac.c 	amd76x_init_csrows(mci, pdev, ems_modes[ems_mode]);
mci               271 drivers/edac/amd76x_edac.c 	amd76x_get_error_info(mci, &discard);	/* clear counters */
mci               276 drivers/edac/amd76x_edac.c 	if (edac_mc_add_mc(mci)) {
mci               297 drivers/edac/amd76x_edac.c 	edac_mc_free(mci);
mci               321 drivers/edac/amd76x_edac.c 	struct mem_ctl_info *mci;
mci               328 drivers/edac/amd76x_edac.c 	if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL)
mci               331 drivers/edac/amd76x_edac.c 	edac_mc_free(mci);
mci               125 drivers/edac/armada_xp_edac.c static void axp_mc_check(struct mem_ctl_info *mci)
mci               127 drivers/edac/armada_xp_edac.c 	struct axp_mc_drvdata *drvdata = mci->pvt_info;
mci               163 drivers/edac/armada_xp_edac.c 			dev_warn(mci->pdev, "inconsistent SBE count detected");
mci               168 drivers/edac/armada_xp_edac.c 			dev_warn(mci->pdev, "inconsistent DBE count detected");
mci               173 drivers/edac/armada_xp_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci,
mci               177 drivers/edac/armada_xp_edac.c 				     mci->ctl_name,
mci               180 drivers/edac/armada_xp_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci,
mci               184 drivers/edac/armada_xp_edac.c 				     mci->ctl_name,
mci               201 drivers/edac/armada_xp_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci,
mci               207 drivers/edac/armada_xp_edac.c 				     mci->ctl_name, drvdata->msg);
mci               209 drivers/edac/armada_xp_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci,
mci               215 drivers/edac/armada_xp_edac.c 				     mci->ctl_name, drvdata->msg);
mci               219 drivers/edac/armada_xp_edac.c static void axp_mc_read_config(struct mem_ctl_info *mci)
mci               221 drivers/edac/armada_xp_edac.c 	struct axp_mc_drvdata *drvdata = mci->pvt_info;
mci               237 drivers/edac/armada_xp_edac.c 		dimm = mci->dimms[i];
mci               288 drivers/edac/armada_xp_edac.c 	struct mem_ctl_info *mci;
mci               315 drivers/edac/armada_xp_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*drvdata));
mci               316 drivers/edac/armada_xp_edac.c 	if (!mci)
mci               319 drivers/edac/armada_xp_edac.c 	drvdata = mci->pvt_info;
mci               321 drivers/edac/armada_xp_edac.c 	mci->pdev = &pdev->dev;
mci               322 drivers/edac/armada_xp_edac.c 	platform_set_drvdata(pdev, mci);
mci               325 drivers/edac/armada_xp_edac.c 	mci->edac_check = axp_mc_check;
mci               326 drivers/edac/armada_xp_edac.c 	mci->mtype_cap = MEM_FLAG_DDR3;
mci               327 drivers/edac/armada_xp_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               328 drivers/edac/armada_xp_edac.c 	mci->mod_name = pdev->dev.driver->name;
mci               329 drivers/edac/armada_xp_edac.c 	mci->ctl_name = id ? id->compatible : "unknown";
mci               330 drivers/edac/armada_xp_edac.c 	mci->dev_name = dev_name(&pdev->dev);
mci               331 drivers/edac/armada_xp_edac.c 	mci->scrub_mode = SCRUB_NONE;
mci               333 drivers/edac/armada_xp_edac.c 	axp_mc_read_config(mci);
mci               352 drivers/edac/armada_xp_edac.c 	if (edac_mc_add_mc(mci)) {
mci               353 drivers/edac/armada_xp_edac.c 		edac_mc_free(mci);
mci               363 drivers/edac/armada_xp_edac.c 	struct mem_ctl_info *mci = platform_get_drvdata(pdev);
mci               366 drivers/edac/armada_xp_edac.c 	edac_mc_free(mci);
mci                92 drivers/edac/aspeed_edac.c static void count_rec(struct mem_ctl_info *mci, u8 rec_cnt, u32 rec_addr)
mci                94 drivers/edac/aspeed_edac.c 	struct csrow_info *csrow = mci->csrows[0];
mci               107 drivers/edac/aspeed_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, rec_cnt-1,
mci               118 drivers/edac/aspeed_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               124 drivers/edac/aspeed_edac.c static void count_un_rec(struct mem_ctl_info *mci, u8 un_rec_cnt,
mci               127 drivers/edac/aspeed_edac.c 	struct csrow_info *csrow = mci->csrows[0];
mci               139 drivers/edac/aspeed_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               150 drivers/edac/aspeed_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, un_rec_cnt-1,
mci               159 drivers/edac/aspeed_edac.c 	struct mem_ctl_info *mci = arg;
mci               165 drivers/edac/aspeed_edac.c 	dev_dbg(mci->pdev, "received edac interrupt w/ mcr register 50: 0x%x\n",
mci               172 drivers/edac/aspeed_edac.c 	dev_dbg(mci->pdev, "%d recoverable interrupts and %d unrecoverable interrupts\n",
mci               190 drivers/edac/aspeed_edac.c 	count_rec(mci, rec_cnt, rec_addr);
mci               191 drivers/edac/aspeed_edac.c 	count_un_rec(mci, un_rec_cnt, un_rec_addr);
mci               194 drivers/edac/aspeed_edac.c 		dev_dbg(mci->pdev, "received edac interrupt, but did not find any ECC counters\n");
mci               197 drivers/edac/aspeed_edac.c 	dev_dbg(mci->pdev, "edac interrupt handled. mcr reg 50 is now: 0x%x\n",
mci               231 drivers/edac/aspeed_edac.c static int init_csrows(struct mem_ctl_info *mci)
mci               233 drivers/edac/aspeed_edac.c 	struct csrow_info *csrow = mci->csrows[0];
mci               244 drivers/edac/aspeed_edac.c 		dev_err(mci->pdev, "dt: missing /memory node\n");
mci               253 drivers/edac/aspeed_edac.c 		dev_err(mci->pdev, "dt: failed requesting resource for /memory node\n");
mci               257 drivers/edac/aspeed_edac.c 	dev_dbg(mci->pdev, "dt: /memory node resources: first page r.start=0x%x, resource_size=0x%x, PAGE_SHIFT macro=0x%x\n",
mci               272 drivers/edac/aspeed_edac.c 	dev_dbg(mci->pdev, "initialized dimm with first_page=0x%lx and nr_pages=0x%x\n",
mci               283 drivers/edac/aspeed_edac.c 	struct mem_ctl_info *mci;
mci               319 drivers/edac/aspeed_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, 0);
mci               320 drivers/edac/aspeed_edac.c 	if (!mci)
mci               323 drivers/edac/aspeed_edac.c 	mci->pdev = &pdev->dev;
mci               324 drivers/edac/aspeed_edac.c 	mci->mtype_cap = MEM_FLAG_DDR3 | MEM_FLAG_DDR4;
mci               325 drivers/edac/aspeed_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_SECDED;
mci               326 drivers/edac/aspeed_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               327 drivers/edac/aspeed_edac.c 	mci->scrub_cap = SCRUB_FLAG_HW_SRC;
mci               328 drivers/edac/aspeed_edac.c 	mci->scrub_mode = SCRUB_HW_SRC;
mci               329 drivers/edac/aspeed_edac.c 	mci->mod_name = DRV_NAME;
mci               330 drivers/edac/aspeed_edac.c 	mci->ctl_name = "MIC";
mci               331 drivers/edac/aspeed_edac.c 	mci->dev_name = dev_name(&pdev->dev);
mci               333 drivers/edac/aspeed_edac.c 	rc = init_csrows(mci);
mci               339 drivers/edac/aspeed_edac.c 	platform_set_drvdata(pdev, mci);
mci               342 drivers/edac/aspeed_edac.c 	rc = edac_mc_add_mc(mci);
mci               349 drivers/edac/aspeed_edac.c 	rc = config_irq(mci, pdev);
mci               360 drivers/edac/aspeed_edac.c 	edac_mc_free(mci);
mci               367 drivers/edac/aspeed_edac.c 	struct mem_ctl_info *mci;
mci               374 drivers/edac/aspeed_edac.c 	mci = edac_mc_del_mc(&pdev->dev);
mci               375 drivers/edac/aspeed_edac.c 	if (mci)
mci               376 drivers/edac/aspeed_edac.c 		edac_mc_free(mci);
mci                93 drivers/edac/bluefield_edac.c static void bluefield_gather_report_ecc(struct mem_ctl_info *mci,
mci                97 drivers/edac/bluefield_edac.c 	struct bluefield_edac_priv *priv = mci->pvt_info;
mci               125 drivers/edac/bluefield_edac.c 		edac_mc_handle_error(ecc_type, mci, error_cnt, 0, 0, 0,
mci               126 drivers/edac/bluefield_edac.c 				     0, 0, -1, mci->ctl_name, "");
mci               140 drivers/edac/bluefield_edac.c 	edac_mc_handle_error(ecc_type, mci, error_cnt,
mci               143 drivers/edac/bluefield_edac.c 			     syndrom, ecc_dimm, 0, 0, mci->ctl_name, "");
mci               146 drivers/edac/bluefield_edac.c static void bluefield_edac_check(struct mem_ctl_info *mci)
mci               148 drivers/edac/bluefield_edac.c 	struct bluefield_edac_priv *priv = mci->pvt_info;
mci               155 drivers/edac/bluefield_edac.c 	if (mci->edac_cap == EDAC_FLAG_NONE)
mci               165 drivers/edac/bluefield_edac.c 		bluefield_gather_report_ecc(mci, single_error_count, 1);
mci               171 drivers/edac/bluefield_edac.c 		bluefield_gather_report_ecc(mci, double_error_count, 0);
mci               180 drivers/edac/bluefield_edac.c static void bluefield_edac_init_dimms(struct mem_ctl_info *mci)
mci               182 drivers/edac/bluefield_edac.c 	struct bluefield_edac_priv *priv = mci->pvt_info;
mci               183 drivers/edac/bluefield_edac.c 	int mem_ctrl_idx = mci->mc_idx;
mci               189 drivers/edac/bluefield_edac.c 		dimm = mci->dimms[i];
mci               237 drivers/edac/bluefield_edac.c 		mci->edac_cap = EDAC_FLAG_NONE;
mci               239 drivers/edac/bluefield_edac.c 		mci->edac_cap = EDAC_FLAG_SECDED;
mci               247 drivers/edac/bluefield_edac.c 	struct mem_ctl_info *mci;
mci               277 drivers/edac/bluefield_edac.c 	mci = edac_mc_alloc(mc_idx, ARRAY_SIZE(layers), layers, sizeof(*priv));
mci               278 drivers/edac/bluefield_edac.c 	if (!mci)
mci               281 drivers/edac/bluefield_edac.c 	priv = mci->pvt_info;
mci               291 drivers/edac/bluefield_edac.c 	mci->pdev = dev;
mci               292 drivers/edac/bluefield_edac.c 	mci->mtype_cap = MEM_FLAG_DDR4 | MEM_FLAG_RDDR4 |
mci               294 drivers/edac/bluefield_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_SECDED;
mci               296 drivers/edac/bluefield_edac.c 	mci->mod_name = DRIVER_NAME;
mci               297 drivers/edac/bluefield_edac.c 	mci->ctl_name = "BlueField_Memory_Controller";
mci               298 drivers/edac/bluefield_edac.c 	mci->dev_name = dev_name(dev);
mci               299 drivers/edac/bluefield_edac.c 	mci->edac_check = bluefield_edac_check;
mci               302 drivers/edac/bluefield_edac.c 	bluefield_edac_init_dimms(mci);
mci               304 drivers/edac/bluefield_edac.c 	platform_set_drvdata(pdev, mci);
mci               307 drivers/edac/bluefield_edac.c 	rc = edac_mc_add_mc(mci);
mci               320 drivers/edac/bluefield_edac.c 	edac_mc_free(mci);
mci               328 drivers/edac/bluefield_edac.c 	struct mem_ctl_info *mci = platform_get_drvdata(pdev);
mci               331 drivers/edac/bluefield_edac.c 	edac_mc_free(mci);
mci                34 drivers/edac/cell_edac.c static void cell_edac_count_ce(struct mem_ctl_info *mci, int chan, u64 ar)
mci                36 drivers/edac/cell_edac.c 	struct cell_edac_priv		*priv = mci->pvt_info;
mci                37 drivers/edac/cell_edac.c 	struct csrow_info		*csrow = mci->csrows[0];
mci                40 drivers/edac/cell_edac.c 	dev_dbg(mci->pdev, "ECC CE err on node %d, channel %d, ar = 0x%016llx\n",
mci                52 drivers/edac/cell_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci                57 drivers/edac/cell_edac.c static void cell_edac_count_ue(struct mem_ctl_info *mci, int chan, u64 ar)
mci                59 drivers/edac/cell_edac.c 	struct cell_edac_priv		*priv = mci->pvt_info;
mci                60 drivers/edac/cell_edac.c 	struct csrow_info		*csrow = mci->csrows[0];
mci                63 drivers/edac/cell_edac.c 	dev_dbg(mci->pdev, "ECC UE err on node %d, channel %d, ar = 0x%016llx\n",
mci                74 drivers/edac/cell_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci                79 drivers/edac/cell_edac.c static void cell_edac_check(struct mem_ctl_info *mci)
mci                81 drivers/edac/cell_edac.c 	struct cell_edac_priv		*priv = mci->pvt_info;
mci                87 drivers/edac/cell_edac.c 		dev_dbg(mci->pdev, "fir change : 0x%016lx\n", fir);
mci                94 drivers/edac/cell_edac.c 		cell_edac_count_ce(mci, 0, addreg);
mci                99 drivers/edac/cell_edac.c 		cell_edac_count_ce(mci, 1, addreg);
mci               104 drivers/edac/cell_edac.c 		cell_edac_count_ue(mci, 0, addreg);
mci               109 drivers/edac/cell_edac.c 		cell_edac_count_ue(mci, 1, addreg);
mci               123 drivers/edac/cell_edac.c 		dev_dbg(mci->pdev, "fir clear  : 0x%016lx\n", fir);
mci               128 drivers/edac/cell_edac.c static void cell_edac_init_csrows(struct mem_ctl_info *mci)
mci               130 drivers/edac/cell_edac.c 	struct csrow_info		*csrow = mci->csrows[0];
mci               132 drivers/edac/cell_edac.c 	struct cell_edac_priv		*priv = mci->pvt_info;
mci               158 drivers/edac/cell_edac.c 		dev_dbg(mci->pdev,
mci               171 drivers/edac/cell_edac.c 	struct mem_ctl_info		*mci;
mci               208 drivers/edac/cell_edac.c 	mci = edac_mc_alloc(pdev->id, ARRAY_SIZE(layers), layers,
mci               210 drivers/edac/cell_edac.c 	if (mci == NULL)
mci               212 drivers/edac/cell_edac.c 	priv = mci->pvt_info;
mci               216 drivers/edac/cell_edac.c 	mci->pdev = &pdev->dev;
mci               217 drivers/edac/cell_edac.c 	mci->mtype_cap = MEM_FLAG_XDR;
mci               218 drivers/edac/cell_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED;
mci               219 drivers/edac/cell_edac.c 	mci->edac_cap = EDAC_FLAG_EC | EDAC_FLAG_SECDED;
mci               220 drivers/edac/cell_edac.c 	mci->mod_name = "cell_edac";
mci               221 drivers/edac/cell_edac.c 	mci->ctl_name = "MIC";
mci               222 drivers/edac/cell_edac.c 	mci->dev_name = dev_name(&pdev->dev);
mci               223 drivers/edac/cell_edac.c 	mci->edac_check = cell_edac_check;
mci               224 drivers/edac/cell_edac.c 	cell_edac_init_csrows(mci);
mci               227 drivers/edac/cell_edac.c 	rc = edac_mc_add_mc(mci);
mci               230 drivers/edac/cell_edac.c 		edac_mc_free(mci);
mci               239 drivers/edac/cell_edac.c 	struct mem_ctl_info *mci = edac_mc_del_mc(&pdev->dev);
mci               240 drivers/edac/cell_edac.c 	if (mci)
mci               241 drivers/edac/cell_edac.c 		edac_mc_free(mci);
mci                26 drivers/edac/cpc925_edac.c #define cpc925_mc_printk(mci, level, fmt, arg...) \
mci                27 drivers/edac/cpc925_edac.c 	edac_mc_chipset_printk(mci, level, "CPC925", fmt, ##arg)
mci               314 drivers/edac/cpc925_edac.c static void cpc925_init_csrows(struct mem_ctl_info *mci)
mci               316 drivers/edac/cpc925_edac.c 	struct cpc925_mc_pdata *pdata = mci->pvt_info;
mci               326 drivers/edac/cpc925_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               337 drivers/edac/cpc925_edac.c 		csrow = mci->csrows[index];
mci               380 drivers/edac/cpc925_edac.c static void cpc925_mc_init(struct mem_ctl_info *mci)
mci               382 drivers/edac/cpc925_edac.c 	struct cpc925_mc_pdata *pdata = mci->pvt_info;
mci               402 drivers/edac/cpc925_edac.c static void cpc925_mc_exit(struct mem_ctl_info *mci)
mci               435 drivers/edac/cpc925_edac.c static void cpc925_mc_get_pfn(struct mem_ctl_info *mci, u32 mear,
mci               452 drivers/edac/cpc925_edac.c 	if (mci->csrows[rank]->first_page == 0) {
mci               453 drivers/edac/cpc925_edac.c 		cpc925_mc_printk(mci, KERN_ERR, "ECC occurs in a "
mci               460 drivers/edac/cpc925_edac.c 	pa = mci->csrows[rank]->first_page << PAGE_SHIFT;
mci               504 drivers/edac/cpc925_edac.c static int cpc925_mc_find_channel(struct mem_ctl_info *mci, u16 syndrome)
mci               512 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Unexpected syndrome value: 0x%x\n",
mci               518 drivers/edac/cpc925_edac.c static void cpc925_mc_check(struct mem_ctl_info *mci)
mci               520 drivers/edac/cpc925_edac.c 	struct cpc925_mc_pdata *pdata = mci->pvt_info;
mci               539 drivers/edac/cpc925_edac.c 	cpc925_mc_get_pfn(mci, mear, &pfn, &offset, &csrow);
mci               542 drivers/edac/cpc925_edac.c 		cpc925_mc_printk(mci, KERN_INFO, "DRAM CECC Fault\n");
mci               543 drivers/edac/cpc925_edac.c 		channel = cpc925_mc_find_channel(mci, syndrome);
mci               544 drivers/edac/cpc925_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               547 drivers/edac/cpc925_edac.c 				     mci->ctl_name, "");
mci               551 drivers/edac/cpc925_edac.c 		cpc925_mc_printk(mci, KERN_INFO, "DRAM UECC Fault\n");
mci               552 drivers/edac/cpc925_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               555 drivers/edac/cpc925_edac.c 				     mci->ctl_name, "");
mci               558 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Dump registers:\n");
mci               559 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "APIMASK		0x%08x\n",
mci               561 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "APIEXCP		0x%08x\n",
mci               563 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Mem Scrub Ctrl	0x%08x\n",
mci               565 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Mem Scrub Rge Start	0x%08x\n",
mci               567 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Mem Scrub Rge End	0x%08x\n",
mci               569 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Mem Scrub Pattern	0x%08x\n",
mci               571 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Mem Chk Ctrl		0x%08x\n",
mci               573 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Mem Chk Rge End	0x%08x\n",
mci               575 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Mem Err Address	0x%08x\n",
mci               577 drivers/edac/cpc925_edac.c 	cpc925_mc_printk(mci, KERN_INFO, "Mem Err Syndrome	0x%08x\n",
mci               863 drivers/edac/cpc925_edac.c static int cpc925_get_sdram_scrub_rate(struct mem_ctl_info *mci)
mci               865 drivers/edac/cpc925_edac.c 	struct cpc925_mc_pdata *pdata = mci->pvt_info;
mci               877 drivers/edac/cpc925_edac.c 		cpc925_mc_printk(mci, KERN_INFO, "Scrub mode not enabled\n");
mci               909 drivers/edac/cpc925_edac.c 	struct mem_ctl_info *mci;
mci               954 drivers/edac/cpc925_edac.c 	mci = edac_mc_alloc(edac_mc_idx, ARRAY_SIZE(layers), layers,
mci               956 drivers/edac/cpc925_edac.c 	if (!mci) {
mci               962 drivers/edac/cpc925_edac.c 	pdata = mci->pvt_info;
mci               967 drivers/edac/cpc925_edac.c 	mci->pdev = &pdev->dev;
mci               968 drivers/edac/cpc925_edac.c 	platform_set_drvdata(pdev, mci);
mci               969 drivers/edac/cpc925_edac.c 	mci->dev_name = dev_name(&pdev->dev);
mci               970 drivers/edac/cpc925_edac.c 	mci->mtype_cap = MEM_FLAG_RDDR | MEM_FLAG_DDR;
mci               971 drivers/edac/cpc925_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               972 drivers/edac/cpc925_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               973 drivers/edac/cpc925_edac.c 	mci->mod_name = CPC925_EDAC_MOD_STR;
mci               974 drivers/edac/cpc925_edac.c 	mci->ctl_name = pdev->name;
mci               977 drivers/edac/cpc925_edac.c 		mci->edac_check = cpc925_mc_check;
mci               979 drivers/edac/cpc925_edac.c 	mci->ctl_page_to_phys = NULL;
mci               980 drivers/edac/cpc925_edac.c 	mci->scrub_mode = SCRUB_SW_SRC;
mci               981 drivers/edac/cpc925_edac.c 	mci->set_sdram_scrub_rate = NULL;
mci               982 drivers/edac/cpc925_edac.c 	mci->get_sdram_scrub_rate = cpc925_get_sdram_scrub_rate;
mci               984 drivers/edac/cpc925_edac.c 	cpc925_init_csrows(mci);
mci               987 drivers/edac/cpc925_edac.c 	cpc925_mc_init(mci);
mci               989 drivers/edac/cpc925_edac.c 	if (edac_mc_add_mc(mci) > 0) {
mci               990 drivers/edac/cpc925_edac.c 		cpc925_mc_printk(mci, KERN_ERR, "Failed edac_mc_add_mc()\n");
mci              1003 drivers/edac/cpc925_edac.c 	cpc925_mc_exit(mci);
mci              1004 drivers/edac/cpc925_edac.c 	edac_mc_free(mci);
mci              1015 drivers/edac/cpc925_edac.c 	struct mem_ctl_info *mci = platform_get_drvdata(pdev);
mci              1022 drivers/edac/cpc925_edac.c 	cpc925_mc_exit(mci);
mci              1025 drivers/edac/cpc925_edac.c 	edac_mc_free(mci);
mci                11 drivers/edac/debugfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                13 drivers/edac/debugfs.c 	u16 errcount = mci->fake_inject_count;
mci                18 drivers/edac/debugfs.c 	type = mci->fake_inject_ue ? HW_EVENT_ERR_UNCORRECTED
mci                26 drivers/edac/debugfs.c 		mci->fake_inject_layer[0],
mci                27 drivers/edac/debugfs.c 		mci->fake_inject_layer[1],
mci                28 drivers/edac/debugfs.c 		mci->fake_inject_layer[2]
mci                30 drivers/edac/debugfs.c 	edac_mc_handle_error(type, mci, errcount, 0, 0, 0,
mci                31 drivers/edac/debugfs.c 			     mci->fake_inject_layer[0],
mci                32 drivers/edac/debugfs.c 			     mci->fake_inject_layer[1],
mci                33 drivers/edac/debugfs.c 			     mci->fake_inject_layer[2],
mci                55 drivers/edac/debugfs.c void edac_create_debugfs_nodes(struct mem_ctl_info *mci)
mci                61 drivers/edac/debugfs.c 	parent = debugfs_create_dir(mci->dev.kobj.name, edac_debugfs);
mci                63 drivers/edac/debugfs.c 	for (i = 0; i < mci->n_layers; i++) {
mci                65 drivers/edac/debugfs.c 			     edac_layer_name[mci->layers[i].type]);
mci                67 drivers/edac/debugfs.c 				  &mci->fake_inject_layer[i]);
mci                71 drivers/edac/debugfs.c 			    &mci->fake_inject_ue);
mci                74 drivers/edac/debugfs.c 			   &mci->fake_inject_count);
mci                76 drivers/edac/debugfs.c 	debugfs_create_file("fake_inject", S_IWUSR, parent, &mci->dev,
mci                79 drivers/edac/debugfs.c 	mci->debugfs = parent;
mci                40 drivers/edac/e752x_edac.c #define e752x_mc_printk(mci, level, fmt, arg...) \
mci                41 drivers/edac/e752x_edac.c 	edac_mc_chipset_printk(mci, level, "e752x", fmt, ##arg)
mci               304 drivers/edac/e752x_edac.c static unsigned long ctl_page_to_phys(struct mem_ctl_info *mci,
mci               308 drivers/edac/e752x_edac.c 	struct e752x_pvt *pvt = (struct e752x_pvt *)mci->pvt_info;
mci               327 drivers/edac/e752x_edac.c static void do_process_ce(struct mem_ctl_info *mci, u16 error_one,
mci               334 drivers/edac/e752x_edac.c 	struct e752x_pvt *pvt = (struct e752x_pvt *)mci->pvt_info;
mci               362 drivers/edac/e752x_edac.c 			e752x_mc_printk(mci, KERN_WARNING,
mci               366 drivers/edac/e752x_edac.c 		row = edac_mc_find_csrow_by_page(mci, page);
mci               372 drivers/edac/e752x_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               378 drivers/edac/e752x_edac.c static inline void process_ce(struct mem_ctl_info *mci, u16 error_one,
mci               385 drivers/edac/e752x_edac.c 		do_process_ce(mci, error_one, sec1_add, sec1_syndrome);
mci               388 drivers/edac/e752x_edac.c static void do_process_ue(struct mem_ctl_info *mci, u16 error_one,
mci               393 drivers/edac/e752x_edac.c 	struct e752x_pvt *pvt = (struct e752x_pvt *)mci->pvt_info;
mci               406 drivers/edac/e752x_edac.c 			edac_mc_find_csrow_by_page(mci, block_page);
mci               409 drivers/edac/e752x_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               425 drivers/edac/e752x_edac.c 			edac_mc_find_csrow_by_page(mci, block_page);
mci               428 drivers/edac/e752x_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               436 drivers/edac/e752x_edac.c static inline void process_ue(struct mem_ctl_info *mci, u16 error_one,
mci               443 drivers/edac/e752x_edac.c 		do_process_ue(mci, error_one, ded_add, scrb_add);
mci               446 drivers/edac/e752x_edac.c static inline void process_ue_no_info_wr(struct mem_ctl_info *mci,
mci               455 drivers/edac/e752x_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               460 drivers/edac/e752x_edac.c static void do_process_ded_retry(struct mem_ctl_info *mci, u16 error,
mci               465 drivers/edac/e752x_edac.c 	struct e752x_pvt *pvt = (struct e752x_pvt *)mci->pvt_info;
mci               472 drivers/edac/e752x_edac.c 		edac_mc_find_csrow_by_page(mci, page);
mci               474 drivers/edac/e752x_edac.c 	e752x_mc_printk(mci, KERN_WARNING,
mci               479 drivers/edac/e752x_edac.c static inline void process_ded_retry(struct mem_ctl_info *mci, u16 error,
mci               486 drivers/edac/e752x_edac.c 		do_process_ded_retry(mci, error, retry_add);
mci               489 drivers/edac/e752x_edac.c static inline void process_threshold_ce(struct mem_ctl_info *mci, u16 error,
mci               495 drivers/edac/e752x_edac.c 		e752x_mc_printk(mci, KERN_WARNING, "Memory threshold CE\n");
mci               790 drivers/edac/e752x_edac.c static void e752x_check_dram(struct mem_ctl_info *mci,
mci               801 drivers/edac/e752x_edac.c 		process_ce(mci, error_one, info->dram_sec1_add,
mci               805 drivers/edac/e752x_edac.c 		process_ce(mci, error_next, info->dram_sec2_add,
mci               809 drivers/edac/e752x_edac.c 		process_ue_no_info_wr(mci, error_found, handle_error);
mci               812 drivers/edac/e752x_edac.c 		process_ue_no_info_wr(mci, error_found, handle_error);
mci               815 drivers/edac/e752x_edac.c 		process_ded_retry(mci, error_one, info->dram_retr_add,
mci               819 drivers/edac/e752x_edac.c 		process_ded_retry(mci, error_next, info->dram_retr_add,
mci               823 drivers/edac/e752x_edac.c 		process_threshold_ce(mci, error_one, error_found, handle_error);
mci               826 drivers/edac/e752x_edac.c 		process_threshold_ce(mci, error_next, error_found,
mci               830 drivers/edac/e752x_edac.c 		process_ue(mci, error_one, info->dram_ded_add,
mci               834 drivers/edac/e752x_edac.c 		process_ue(mci, error_next, info->dram_ded_add,
mci               838 drivers/edac/e752x_edac.c static void e752x_get_error_info(struct mem_ctl_info *mci,
mci               845 drivers/edac/e752x_edac.c 	pvt = (struct e752x_pvt *)mci->pvt_info;
mci               945 drivers/edac/e752x_edac.c static int e752x_process_error_info(struct mem_ctl_info *mci,
mci               975 drivers/edac/e752x_edac.c 	e752x_check_dram(mci, info, &error_found, handle_errors);
mci               979 drivers/edac/e752x_edac.c static void e752x_check(struct mem_ctl_info *mci)
mci               984 drivers/edac/e752x_edac.c 	e752x_get_error_info(mci, &info);
mci               985 drivers/edac/e752x_edac.c 	e752x_process_error_info(mci, &info, 1);
mci               989 drivers/edac/e752x_edac.c static int set_sdram_scrub_rate(struct mem_ctl_info *mci, u32 new_bw)
mci               992 drivers/edac/e752x_edac.c 	struct e752x_pvt *pvt = (struct e752x_pvt *) mci->pvt_info;
mci              1018 drivers/edac/e752x_edac.c static int get_sdram_scrub_rate(struct mem_ctl_info *mci)
mci              1021 drivers/edac/e752x_edac.c 	struct e752x_pvt *pvt = (struct e752x_pvt *) mci->pvt_info;
mci              1056 drivers/edac/e752x_edac.c static inline int remap_csrow_index(struct mem_ctl_info *mci, int index)
mci              1058 drivers/edac/e752x_edac.c 	struct e752x_pvt *pvt = mci->pvt_info;
mci              1066 drivers/edac/e752x_edac.c static void e752x_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev,
mci              1094 drivers/edac/e752x_edac.c 	for (last_cumul_size = index = 0; index < mci->nr_csrows; index++) {
mci              1097 drivers/edac/e752x_edac.c 		csrow = mci->csrows[remap_csrow_index(mci, index)];
mci              1119 drivers/edac/e752x_edac.c 				mci->edac_cap |= EDAC_FLAG_S4ECD4ED;
mci              1122 drivers/edac/e752x_edac.c 				mci->edac_cap |= EDAC_FLAG_SECDED;
mci              1260 drivers/edac/e752x_edac.c 	struct mem_ctl_info *mci;
mci              1294 drivers/edac/e752x_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt));
mci              1295 drivers/edac/e752x_edac.c 	if (mci == NULL)
mci              1299 drivers/edac/e752x_edac.c 	mci->mtype_cap = MEM_FLAG_RDDR;
mci              1301 drivers/edac/e752x_edac.c 	mci->edac_ctl_cap = (dev_idx == I3100) ? EDAC_FLAG_SECDED :
mci              1304 drivers/edac/e752x_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci              1305 drivers/edac/e752x_edac.c 	mci->pdev = &pdev->dev;
mci              1308 drivers/edac/e752x_edac.c 	pvt = (struct e752x_pvt *)mci->pvt_info;
mci              1313 drivers/edac/e752x_edac.c 		edac_mc_free(mci);
mci              1318 drivers/edac/e752x_edac.c 	mci->ctl_name = pvt->dev_info->ctl_name;
mci              1319 drivers/edac/e752x_edac.c 	mci->dev_name = pci_name(pdev);
mci              1320 drivers/edac/e752x_edac.c 	mci->edac_check = e752x_check;
mci              1321 drivers/edac/e752x_edac.c 	mci->ctl_page_to_phys = ctl_page_to_phys;
mci              1322 drivers/edac/e752x_edac.c 	mci->set_sdram_scrub_rate = set_sdram_scrub_rate;
mci              1323 drivers/edac/e752x_edac.c 	mci->get_sdram_scrub_rate = get_sdram_scrub_rate;
mci              1332 drivers/edac/e752x_edac.c 	e752x_init_csrows(mci, pdev, ddrcsr);
mci              1336 drivers/edac/e752x_edac.c 		mci->edac_cap = EDAC_FLAG_SECDED; /* the only mode supported */
mci              1338 drivers/edac/e752x_edac.c 		mci->edac_cap |= EDAC_FLAG_NONE;
mci              1355 drivers/edac/e752x_edac.c 	if (edac_mc_add_mc(mci)) {
mci              1361 drivers/edac/e752x_edac.c 	e752x_get_error_info(mci, &discard);	/* clear other MCH errors */
mci              1380 drivers/edac/e752x_edac.c 	edac_mc_free(mci);
mci              1399 drivers/edac/e752x_edac.c 	struct mem_ctl_info *mci;
mci              1407 drivers/edac/e752x_edac.c 	if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL)
mci              1410 drivers/edac/e752x_edac.c 	pvt = (struct e752x_pvt *)mci->pvt_info;
mci              1413 drivers/edac/e752x_edac.c 	edac_mc_free(mci);
mci                40 drivers/edac/e7xxx_edac.c #define e7xxx_mc_printk(mci, level, fmt, arg...) \
mci                41 drivers/edac/e7xxx_edac.c 	edac_mc_chipset_printk(mci, level, "e7xxx", fmt, ##arg)
mci               182 drivers/edac/e7xxx_edac.c static unsigned long ctl_page_to_phys(struct mem_ctl_info *mci,
mci               186 drivers/edac/e7xxx_edac.c 	struct e7xxx_pvt *pvt = (struct e7xxx_pvt *)mci->pvt_info;
mci               203 drivers/edac/e7xxx_edac.c static void process_ce(struct mem_ctl_info *mci, struct e7xxx_error_info *info)
mci               218 drivers/edac/e7xxx_edac.c 	row = edac_mc_find_csrow_by_page(mci, page);
mci               221 drivers/edac/e7xxx_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, page, 0, syndrome,
mci               225 drivers/edac/e7xxx_edac.c static void process_ce_no_info(struct mem_ctl_info *mci)
mci               228 drivers/edac/e7xxx_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, 0, 0, 0, -1, -1, -1,
mci               232 drivers/edac/e7xxx_edac.c static void process_ue(struct mem_ctl_info *mci, struct e7xxx_error_info *info)
mci               242 drivers/edac/e7xxx_edac.c 	row = edac_mc_find_csrow_by_page(mci, block_page);
mci               244 drivers/edac/e7xxx_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, block_page, 0, 0,
mci               248 drivers/edac/e7xxx_edac.c static void process_ue_no_info(struct mem_ctl_info *mci)
mci               252 drivers/edac/e7xxx_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0, -1, -1, -1,
mci               256 drivers/edac/e7xxx_edac.c static void e7xxx_get_error_info(struct mem_ctl_info *mci,
mci               261 drivers/edac/e7xxx_edac.c 	pvt = (struct e7xxx_pvt *)mci->pvt_info;
mci               284 drivers/edac/e7xxx_edac.c static int e7xxx_process_error_info(struct mem_ctl_info *mci,
mci               297 drivers/edac/e7xxx_edac.c 			process_ce(mci, info);
mci               304 drivers/edac/e7xxx_edac.c 			process_ue(mci, info);
mci               312 drivers/edac/e7xxx_edac.c 				process_ce_no_info(mci);
mci               314 drivers/edac/e7xxx_edac.c 				process_ce(mci, info);
mci               323 drivers/edac/e7xxx_edac.c 				process_ue_no_info(mci);
mci               325 drivers/edac/e7xxx_edac.c 				process_ue(mci, info);
mci               332 drivers/edac/e7xxx_edac.c static void e7xxx_check(struct mem_ctl_info *mci)
mci               337 drivers/edac/e7xxx_edac.c 	e7xxx_get_error_info(mci, &info);
mci               338 drivers/edac/e7xxx_edac.c 	e7xxx_process_error_info(mci, &info, 1);
mci               354 drivers/edac/e7xxx_edac.c static void e7xxx_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev,
mci               377 drivers/edac/e7xxx_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               380 drivers/edac/e7xxx_edac.c 		csrow = mci->csrows[index];
mci               401 drivers/edac/e7xxx_edac.c 				mci->edac_cap |= EDAC_FLAG_S4ECD4ED;
mci               404 drivers/edac/e7xxx_edac.c 				mci->edac_cap |= EDAC_FLAG_SECDED;
mci               424 drivers/edac/e7xxx_edac.c 	struct mem_ctl_info *mci = NULL;
mci               450 drivers/edac/e7xxx_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt));
mci               451 drivers/edac/e7xxx_edac.c 	if (mci == NULL)
mci               455 drivers/edac/e7xxx_edac.c 	mci->mtype_cap = MEM_FLAG_RDDR;
mci               456 drivers/edac/e7xxx_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED |
mci               459 drivers/edac/e7xxx_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               460 drivers/edac/e7xxx_edac.c 	mci->pdev = &pdev->dev;
mci               462 drivers/edac/e7xxx_edac.c 	pvt = (struct e7xxx_pvt *)mci->pvt_info;
mci               475 drivers/edac/e7xxx_edac.c 	mci->ctl_name = pvt->dev_info->ctl_name;
mci               476 drivers/edac/e7xxx_edac.c 	mci->dev_name = pci_name(pdev);
mci               477 drivers/edac/e7xxx_edac.c 	mci->edac_check = e7xxx_check;
mci               478 drivers/edac/e7xxx_edac.c 	mci->ctl_page_to_phys = ctl_page_to_phys;
mci               479 drivers/edac/e7xxx_edac.c 	e7xxx_init_csrows(mci, pdev, dev_idx, drc);
mci               480 drivers/edac/e7xxx_edac.c 	mci->edac_cap |= EDAC_FLAG_NONE;
mci               494 drivers/edac/e7xxx_edac.c 	e7xxx_get_error_info(mci, &discard);
mci               499 drivers/edac/e7xxx_edac.c 	if (edac_mc_add_mc(mci)) {
mci               523 drivers/edac/e7xxx_edac.c 	edac_mc_free(mci);
mci               540 drivers/edac/e7xxx_edac.c 	struct mem_ctl_info *mci;
mci               548 drivers/edac/e7xxx_edac.c 	if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL)
mci               551 drivers/edac/e7xxx_edac.c 	pvt = (struct e7xxx_pvt *)mci->pvt_info;
mci               553 drivers/edac/e7xxx_edac.c 	edac_mc_free(mci);
mci               120 drivers/edac/edac_mc.c 	struct mem_ctl_info *mci = dimm->mci;
mci               124 drivers/edac/edac_mc.c 	for (i = 0; i < mci->n_layers; i++) {
mci               126 drivers/edac/edac_mc.c 			      edac_layer_name[mci->layers[i].type],
mci               155 drivers/edac/edac_mc.c 		 dimm->mci->csbased ? "rank" : "dimm",
mci               173 drivers/edac/edac_mc.c 	edac_dbg(4, "  csrow->mci = %p\n", csrow->mci);
mci               176 drivers/edac/edac_mc.c static void edac_mc_dump_mci(struct mem_ctl_info *mci)
mci               178 drivers/edac/edac_mc.c 	edac_dbg(3, "\tmci = %p\n", mci);
mci               179 drivers/edac/edac_mc.c 	edac_dbg(3, "\tmci->mtype_cap = %lx\n", mci->mtype_cap);
mci               180 drivers/edac/edac_mc.c 	edac_dbg(3, "\tmci->edac_ctl_cap = %lx\n", mci->edac_ctl_cap);
mci               181 drivers/edac/edac_mc.c 	edac_dbg(3, "\tmci->edac_cap = %lx\n", mci->edac_cap);
mci               182 drivers/edac/edac_mc.c 	edac_dbg(4, "\tmci->edac_check = %p\n", mci->edac_check);
mci               184 drivers/edac/edac_mc.c 		 mci->nr_csrows, mci->csrows);
mci               186 drivers/edac/edac_mc.c 		 mci->tot_dimms, mci->dimms);
mci               187 drivers/edac/edac_mc.c 	edac_dbg(3, "\tdev = %p\n", mci->pdev);
mci               189 drivers/edac/edac_mc.c 		 mci->mod_name, mci->ctl_name);
mci               190 drivers/edac/edac_mc.c 	edac_dbg(3, "\tpvt_info = %p\n\n", mci->pvt_info);
mci               276 drivers/edac/edac_mc.c static void _edac_mc_free(struct mem_ctl_info *mci)
mci               281 drivers/edac/edac_mc.c 	if (mci->dimms) {
mci               282 drivers/edac/edac_mc.c 		for (i = 0; i < mci->tot_dimms; i++)
mci               283 drivers/edac/edac_mc.c 			kfree(mci->dimms[i]);
mci               284 drivers/edac/edac_mc.c 		kfree(mci->dimms);
mci               287 drivers/edac/edac_mc.c 	if (mci->csrows) {
mci               288 drivers/edac/edac_mc.c 		for (row = 0; row < mci->nr_csrows; row++) {
mci               289 drivers/edac/edac_mc.c 			csr = mci->csrows[row];
mci               294 drivers/edac/edac_mc.c 				for (chn = 0; chn < mci->num_cschannel; chn++)
mci               300 drivers/edac/edac_mc.c 		kfree(mci->csrows);
mci               302 drivers/edac/edac_mc.c 	kfree(mci);
mci               310 drivers/edac/edac_mc.c 	struct mem_ctl_info *mci;
mci               344 drivers/edac/edac_mc.c 	mci = edac_align_ptr(&ptr, sizeof(*mci), 1);
mci               364 drivers/edac/edac_mc.c 	mci = kzalloc(size, GFP_KERNEL);
mci               365 drivers/edac/edac_mc.c 	if (mci == NULL)
mci               371 drivers/edac/edac_mc.c 	layer = (struct edac_mc_layer *)(((char *)mci) + ((unsigned long)layer));
mci               373 drivers/edac/edac_mc.c 		mci->ce_per_layer[i] = (u32 *)((char *)mci + ((unsigned long)ce_per_layer[i]));
mci               374 drivers/edac/edac_mc.c 		mci->ue_per_layer[i] = (u32 *)((char *)mci + ((unsigned long)ue_per_layer[i]));
mci               376 drivers/edac/edac_mc.c 	pvt = sz_pvt ? (((char *)mci) + ((unsigned long)pvt)) : NULL;
mci               379 drivers/edac/edac_mc.c 	mci->mc_idx = mc_num;
mci               380 drivers/edac/edac_mc.c 	mci->tot_dimms = tot_dimms;
mci               381 drivers/edac/edac_mc.c 	mci->pvt_info = pvt;
mci               382 drivers/edac/edac_mc.c 	mci->n_layers = n_layers;
mci               383 drivers/edac/edac_mc.c 	mci->layers = layer;
mci               384 drivers/edac/edac_mc.c 	memcpy(mci->layers, layers, sizeof(*layer) * n_layers);
mci               385 drivers/edac/edac_mc.c 	mci->nr_csrows = tot_csrows;
mci               386 drivers/edac/edac_mc.c 	mci->num_cschannel = tot_channels;
mci               387 drivers/edac/edac_mc.c 	mci->csbased = per_rank;
mci               392 drivers/edac/edac_mc.c 	mci->csrows = kcalloc(tot_csrows, sizeof(*mci->csrows), GFP_KERNEL);
mci               393 drivers/edac/edac_mc.c 	if (!mci->csrows)
mci               396 drivers/edac/edac_mc.c 		csr = kzalloc(sizeof(**mci->csrows), GFP_KERNEL);
mci               399 drivers/edac/edac_mc.c 		mci->csrows[row] = csr;
mci               401 drivers/edac/edac_mc.c 		csr->mci = mci;
mci               421 drivers/edac/edac_mc.c 	mci->dimms  = kcalloc(tot_dimms, sizeof(*mci->dimms), GFP_KERNEL);
mci               422 drivers/edac/edac_mc.c 	if (!mci->dimms)
mci               429 drivers/edac/edac_mc.c 		chan = mci->csrows[row]->channels[chn];
mci               432 drivers/edac/edac_mc.c 			edac_mc_printk(mci, KERN_ERR, "EDAC core bug: EDAC_DIMM_OFF is trying to do an illegal data access\n");
mci               436 drivers/edac/edac_mc.c 		dimm = kzalloc(sizeof(**mci->dimms), GFP_KERNEL);
mci               439 drivers/edac/edac_mc.c 		mci->dimms[off] = dimm;
mci               440 drivers/edac/edac_mc.c 		dimm->mci = mci;
mci               491 drivers/edac/edac_mc.c 	mci->op_state = OP_ALLOC;
mci               493 drivers/edac/edac_mc.c 	return mci;
mci               496 drivers/edac/edac_mc.c 	_edac_mc_free(mci);
mci               502 drivers/edac/edac_mc.c void edac_mc_free(struct mem_ctl_info *mci)
mci               506 drivers/edac/edac_mc.c 	if (device_is_registered(&mci->dev))
mci               507 drivers/edac/edac_mc.c 		edac_unregister_sysfs(mci);
mci               509 drivers/edac/edac_mc.c 	_edac_mc_free(mci);
mci               530 drivers/edac/edac_mc.c 	struct mem_ctl_info *mci;
mci               536 drivers/edac/edac_mc.c 		mci = list_entry(item, struct mem_ctl_info, link);
mci               538 drivers/edac/edac_mc.c 		if (mci->pdev == dev)
mci               539 drivers/edac/edac_mc.c 			return mci;
mci               571 drivers/edac/edac_mc.c 	struct mem_ctl_info *mci = to_edac_mem_ctl_work(d_work);
mci               575 drivers/edac/edac_mc.c 	if (mci->op_state != OP_RUNNING_POLL) {
mci               581 drivers/edac/edac_mc.c 		mci->edac_check(mci);
mci               586 drivers/edac/edac_mc.c 	edac_queue_work(&mci->work, msecs_to_jiffies(edac_mc_get_poll_msec()));
mci               597 drivers/edac/edac_mc.c 	struct mem_ctl_info *mci;
mci               603 drivers/edac/edac_mc.c 		mci = list_entry(item, struct mem_ctl_info, link);
mci               605 drivers/edac/edac_mc.c 		if (mci->op_state == OP_RUNNING_POLL)
mci               606 drivers/edac/edac_mc.c 			edac_mod_work(&mci->work, value);
mci               621 drivers/edac/edac_mc.c static int add_mc_to_global_list(struct mem_ctl_info *mci)
mci               628 drivers/edac/edac_mc.c 	p = __find_mci_by_dev(mci->pdev);
mci               635 drivers/edac/edac_mc.c 		if (p->mc_idx >= mci->mc_idx) {
mci               636 drivers/edac/edac_mc.c 			if (unlikely(p->mc_idx == mci->mc_idx))
mci               644 drivers/edac/edac_mc.c 	list_add_tail_rcu(&mci->link, insert_before);
mci               650 drivers/edac/edac_mc.c 		edac_dev_name(mci), p->mod_name, p->ctl_name, p->mc_idx);
mci               660 drivers/edac/edac_mc.c static int del_mc_from_global_list(struct mem_ctl_info *mci)
mci               662 drivers/edac/edac_mc.c 	list_del_rcu(&mci->link);
mci               668 drivers/edac/edac_mc.c 	INIT_LIST_HEAD(&mci->link);
mci               675 drivers/edac/edac_mc.c 	struct mem_ctl_info *mci;
mci               681 drivers/edac/edac_mc.c 		mci = list_entry(item, struct mem_ctl_info, link);
mci               682 drivers/edac/edac_mc.c 		if (mci->mc_idx == idx)
mci               686 drivers/edac/edac_mc.c 	mci = NULL;
mci               689 drivers/edac/edac_mc.c 	return mci;
mci               700 drivers/edac/edac_mc.c int edac_mc_add_mc_with_groups(struct mem_ctl_info *mci,
mci               708 drivers/edac/edac_mc.c 		edac_mc_dump_mci(mci);
mci               713 drivers/edac/edac_mc.c 		for (i = 0; i < mci->nr_csrows; i++) {
mci               714 drivers/edac/edac_mc.c 			struct csrow_info *csrow = mci->csrows[i];
mci               727 drivers/edac/edac_mc.c 		for (i = 0; i < mci->tot_dimms; i++)
mci               728 drivers/edac/edac_mc.c 			if (mci->dimms[i]->nr_pages)
mci               729 drivers/edac/edac_mc.c 				edac_mc_dump_dimm(mci->dimms[i], i);
mci               734 drivers/edac/edac_mc.c 	if (edac_mc_owner && edac_mc_owner != mci->mod_name) {
mci               739 drivers/edac/edac_mc.c 	if (add_mc_to_global_list(mci))
mci               743 drivers/edac/edac_mc.c 	mci->start_time = jiffies;
mci               745 drivers/edac/edac_mc.c 	mci->bus = edac_get_sysfs_subsys();
mci               747 drivers/edac/edac_mc.c 	if (edac_create_sysfs_mci_device(mci, groups)) {
mci               748 drivers/edac/edac_mc.c 		edac_mc_printk(mci, KERN_WARNING,
mci               753 drivers/edac/edac_mc.c 	if (mci->edac_check) {
mci               754 drivers/edac/edac_mc.c 		mci->op_state = OP_RUNNING_POLL;
mci               756 drivers/edac/edac_mc.c 		INIT_DELAYED_WORK(&mci->work, edac_mc_workq_function);
mci               757 drivers/edac/edac_mc.c 		edac_queue_work(&mci->work, msecs_to_jiffies(edac_mc_get_poll_msec()));
mci               760 drivers/edac/edac_mc.c 		mci->op_state = OP_RUNNING_INTERRUPT;
mci               764 drivers/edac/edac_mc.c 	edac_mc_printk(mci, KERN_INFO,
mci               766 drivers/edac/edac_mc.c 		mci->mod_name, mci->ctl_name, mci->dev_name,
mci               767 drivers/edac/edac_mc.c 		edac_op_state_to_string(mci->op_state));
mci               769 drivers/edac/edac_mc.c 	edac_mc_owner = mci->mod_name;
mci               775 drivers/edac/edac_mc.c 	del_mc_from_global_list(mci);
mci               785 drivers/edac/edac_mc.c 	struct mem_ctl_info *mci;
mci               792 drivers/edac/edac_mc.c 	mci = __find_mci_by_dev(dev);
mci               793 drivers/edac/edac_mc.c 	if (mci == NULL) {
mci               799 drivers/edac/edac_mc.c 	mci->op_state = OP_OFFLINE;
mci               801 drivers/edac/edac_mc.c 	if (del_mc_from_global_list(mci))
mci               806 drivers/edac/edac_mc.c 	if (mci->edac_check)
mci               807 drivers/edac/edac_mc.c 		edac_stop_work(&mci->work);
mci               810 drivers/edac/edac_mc.c 	edac_remove_sysfs_mci_device(mci);
mci               813 drivers/edac/edac_mc.c 		"Removed device %d for %s %s: DEV %s\n", mci->mc_idx,
mci               814 drivers/edac/edac_mc.c 		mci->mod_name, mci->ctl_name, edac_dev_name(mci));
mci               816 drivers/edac/edac_mc.c 	return mci;
mci               852 drivers/edac/edac_mc.c int edac_mc_find_csrow_by_page(struct mem_ctl_info *mci, unsigned long page)
mci               854 drivers/edac/edac_mc.c 	struct csrow_info **csrows = mci->csrows;
mci               857 drivers/edac/edac_mc.c 	edac_dbg(1, "MC%d: 0x%lx\n", mci->mc_idx, page);
mci               860 drivers/edac/edac_mc.c 	for (i = 0; i < mci->nr_csrows; i++) {
mci               871 drivers/edac/edac_mc.c 			 mci->mc_idx,
mci               885 drivers/edac/edac_mc.c 		edac_mc_printk(mci, KERN_ERR,
mci               902 drivers/edac/edac_mc.c static void edac_inc_ce_error(struct mem_ctl_info *mci,
mci               909 drivers/edac/edac_mc.c 	mci->ce_mc += count;
mci               912 drivers/edac/edac_mc.c 		mci->ce_noinfo_count += count;
mci               916 drivers/edac/edac_mc.c 	for (i = 0; i < mci->n_layers; i++) {
mci               920 drivers/edac/edac_mc.c 		mci->ce_per_layer[i][index] += count;
mci               922 drivers/edac/edac_mc.c 		if (i < mci->n_layers - 1)
mci               923 drivers/edac/edac_mc.c 			index *= mci->layers[i + 1].size;
mci               927 drivers/edac/edac_mc.c static void edac_inc_ue_error(struct mem_ctl_info *mci,
mci               934 drivers/edac/edac_mc.c 	mci->ue_mc += count;
mci               937 drivers/edac/edac_mc.c 		mci->ue_noinfo_count += count;
mci               941 drivers/edac/edac_mc.c 	for (i = 0; i < mci->n_layers; i++) {
mci               945 drivers/edac/edac_mc.c 		mci->ue_per_layer[i][index] += count;
mci               947 drivers/edac/edac_mc.c 		if (i < mci->n_layers - 1)
mci               948 drivers/edac/edac_mc.c 			index *= mci->layers[i + 1].size;
mci               952 drivers/edac/edac_mc.c static void edac_ce_error(struct mem_ctl_info *mci,
mci               973 drivers/edac/edac_mc.c 			edac_mc_printk(mci, KERN_WARNING,
mci               978 drivers/edac/edac_mc.c 			edac_mc_printk(mci, KERN_WARNING,
mci               983 drivers/edac/edac_mc.c 	edac_inc_ce_error(mci, enable_per_layer_report, pos, error_count);
mci               985 drivers/edac/edac_mc.c 	if (mci->scrub_mode == SCRUB_SW_SRC) {
mci               997 drivers/edac/edac_mc.c 		remapped_page = mci->ctl_page_to_phys ?
mci               998 drivers/edac/edac_mc.c 			mci->ctl_page_to_phys(mci, page_frame_number) :
mci              1006 drivers/edac/edac_mc.c static void edac_ue_error(struct mem_ctl_info *mci,
mci              1023 drivers/edac/edac_mc.c 			edac_mc_printk(mci, KERN_WARNING,
mci              1028 drivers/edac/edac_mc.c 			edac_mc_printk(mci, KERN_WARNING,
mci              1043 drivers/edac/edac_mc.c 	edac_inc_ue_error(mci, enable_per_layer_report, pos, error_count);
mci              1047 drivers/edac/edac_mc.c 			      struct mem_ctl_info *mci,
mci              1059 drivers/edac/edac_mc.c 		edac_ce_error(mci, e->error_count, pos, e->msg, e->location, e->label,
mci              1067 drivers/edac/edac_mc.c 		edac_ue_error(mci, e->error_count, pos, e->msg, e->location, e->label,
mci              1076 drivers/edac/edac_mc.c 			  struct mem_ctl_info *mci,
mci              1092 drivers/edac/edac_mc.c 	struct edac_raw_error_desc *e = &mci->error_desc;
mci              1094 drivers/edac/edac_mc.c 	edac_dbg(3, "MC%d\n", mci->mc_idx);
mci              1114 drivers/edac/edac_mc.c 	for (i = 0; i < mci->n_layers; i++) {
mci              1115 drivers/edac/edac_mc.c 		if (pos[i] >= (int)mci->layers[i].size) {
mci              1117 drivers/edac/edac_mc.c 			edac_mc_printk(mci, KERN_ERR,
mci              1119 drivers/edac/edac_mc.c 				       edac_layer_name[mci->layers[i].type],
mci              1120 drivers/edac/edac_mc.c 				       pos[i], mci->layers[i].size);
mci              1147 drivers/edac/edac_mc.c 	for (i = 0; i < mci->tot_dimms; i++) {
mci              1148 drivers/edac/edac_mc.c 		struct dimm_info *dimm = mci->dimms[i];
mci              1186 drivers/edac/edac_mc.c 				 mci->csbased ? "rank" : "dimm",
mci              1208 drivers/edac/edac_mc.c 				mci->csrows[row]->ce_count += error_count;
mci              1210 drivers/edac/edac_mc.c 					mci->csrows[row]->channels[chan]->ce_count += error_count;
mci              1214 drivers/edac/edac_mc.c 				mci->csrows[row]->ue_count += error_count;
mci              1220 drivers/edac/edac_mc.c 	for (i = 0; i < mci->n_layers; i++) {
mci              1225 drivers/edac/edac_mc.c 			     edac_layer_name[mci->layers[i].type],
mci              1240 drivers/edac/edac_mc.c 			       mci->mc_idx, e->top_layer, e->mid_layer,
mci              1245 drivers/edac/edac_mc.c 	edac_raw_mc_handle_error(type, mci, e);
mci                51 drivers/edac/edac_mc.h #define edac_mc_printk(mci, level, fmt, arg...) \
mci                52 drivers/edac/edac_mc.h 	printk(level "EDAC MC%d: " fmt, mci->mc_idx, ##arg)
mci                54 drivers/edac/edac_mc.h #define edac_mc_chipset_printk(mci, level, prefix, fmt, arg...) \
mci                55 drivers/edac/edac_mc.h 	printk(level "EDAC " prefix " MC%d: " fmt, mci->mc_idx, ##arg)
mci               148 drivers/edac/edac_mc.h extern int edac_mc_add_mc_with_groups(struct mem_ctl_info *mci,
mci               150 drivers/edac/edac_mc.h #define edac_mc_add_mc(mci)	edac_mc_add_mc_with_groups(mci, NULL)
mci               157 drivers/edac/edac_mc.h extern void edac_mc_free(struct mem_ctl_info *mci);
mci               208 drivers/edac/edac_mc.h extern int edac_mc_find_csrow_by_page(struct mem_ctl_info *mci,
mci               224 drivers/edac/edac_mc.h 			      struct mem_ctl_info *mci,
mci               246 drivers/edac/edac_mc.h 			  struct mem_ctl_info *mci,
mci               401 drivers/edac/edac_mc_sysfs.c static int edac_create_csrow_object(struct mem_ctl_info *mci,
mci               409 drivers/edac/edac_mc_sysfs.c 	csrow->dev.parent = &mci->dev;
mci               410 drivers/edac/edac_mc_sysfs.c 	csrow->mci = mci;
mci               427 drivers/edac/edac_mc_sysfs.c static int edac_create_csrow_objects(struct mem_ctl_info *mci)
mci               432 drivers/edac/edac_mc_sysfs.c 	for (i = 0; i < mci->nr_csrows; i++) {
mci               433 drivers/edac/edac_mc_sysfs.c 		csrow = mci->csrows[i];
mci               436 drivers/edac/edac_mc_sysfs.c 		err = edac_create_csrow_object(mci, mci->csrows[i], i);
mci               444 drivers/edac/edac_mc_sysfs.c 		csrow = mci->csrows[i];
mci               447 drivers/edac/edac_mc_sysfs.c 		device_unregister(&mci->csrows[i]->dev);
mci               453 drivers/edac/edac_mc_sysfs.c static void edac_delete_csrow_objects(struct mem_ctl_info *mci)
mci               458 drivers/edac/edac_mc_sysfs.c 	for (i = mci->nr_csrows - 1; i >= 0; i--) {
mci               459 drivers/edac/edac_mc_sysfs.c 		csrow = mci->csrows[i];
mci               462 drivers/edac/edac_mc_sysfs.c 		device_unregister(&mci->csrows[i]->dev);
mci               558 drivers/edac/edac_mc_sysfs.c 	off = EDAC_DIMM_OFF(dimm->mci->layers,
mci               559 drivers/edac/edac_mc_sysfs.c 			    dimm->mci->n_layers,
mci               563 drivers/edac/edac_mc_sysfs.c 	count = dimm->mci->ce_per_layer[dimm->mci->n_layers-1][off];
mci               575 drivers/edac/edac_mc_sysfs.c 	off = EDAC_DIMM_OFF(dimm->mci->layers,
mci               576 drivers/edac/edac_mc_sysfs.c 			    dimm->mci->n_layers,
mci               580 drivers/edac/edac_mc_sysfs.c 	count = dimm->mci->ue_per_layer[dimm->mci->n_layers-1][off];
mci               628 drivers/edac/edac_mc_sysfs.c static int edac_create_dimm_object(struct mem_ctl_info *mci,
mci               633 drivers/edac/edac_mc_sysfs.c 	dimm->mci = mci;
mci               638 drivers/edac/edac_mc_sysfs.c 	dimm->dev.parent = &mci->dev;
mci               639 drivers/edac/edac_mc_sysfs.c 	if (mci->csbased)
mci               644 drivers/edac/edac_mc_sysfs.c 	pm_runtime_forbid(&mci->dev);
mci               674 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               676 drivers/edac/edac_mc_sysfs.c 	mci->ue_mc = 0;
mci               677 drivers/edac/edac_mc_sysfs.c 	mci->ce_mc = 0;
mci               678 drivers/edac/edac_mc_sysfs.c 	mci->ue_noinfo_count = 0;
mci               679 drivers/edac/edac_mc_sysfs.c 	mci->ce_noinfo_count = 0;
mci               681 drivers/edac/edac_mc_sysfs.c 	for (row = 0; row < mci->nr_csrows; row++) {
mci               682 drivers/edac/edac_mc_sysfs.c 		struct csrow_info *ri = mci->csrows[row];
mci               692 drivers/edac/edac_mc_sysfs.c 	for (i = 0; i < mci->n_layers; i++) {
mci               693 drivers/edac/edac_mc_sysfs.c 		cnt *= mci->layers[i].size;
mci               694 drivers/edac/edac_mc_sysfs.c 		memset(mci->ce_per_layer[i], 0, cnt * sizeof(u32));
mci               695 drivers/edac/edac_mc_sysfs.c 		memset(mci->ue_per_layer[i], 0, cnt * sizeof(u32));
mci               698 drivers/edac/edac_mc_sysfs.c 	mci->start_time = jiffies;
mci               715 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               722 drivers/edac/edac_mc_sysfs.c 	new_bw = mci->set_sdram_scrub_rate(mci, bandwidth);
mci               739 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               742 drivers/edac/edac_mc_sysfs.c 	bandwidth = mci->get_sdram_scrub_rate(mci);
mci               756 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               758 drivers/edac/edac_mc_sysfs.c 	return sprintf(data, "%d\n", mci->ue_mc);
mci               765 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               767 drivers/edac/edac_mc_sysfs.c 	return sprintf(data, "%d\n", mci->ce_mc);
mci               774 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               776 drivers/edac/edac_mc_sysfs.c 	return sprintf(data, "%d\n", mci->ce_noinfo_count);
mci               783 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               785 drivers/edac/edac_mc_sysfs.c 	return sprintf(data, "%d\n", mci->ue_noinfo_count);
mci               792 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               794 drivers/edac/edac_mc_sysfs.c 	return sprintf(data, "%ld\n", (jiffies - mci->start_time) / HZ);
mci               801 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               803 drivers/edac/edac_mc_sysfs.c 	return sprintf(data, "%s\n", mci->ctl_name);
mci               810 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               813 drivers/edac/edac_mc_sysfs.c 	for (csrow_idx = 0; csrow_idx < mci->nr_csrows; csrow_idx++) {
mci               814 drivers/edac/edac_mc_sysfs.c 		struct csrow_info *csrow = mci->csrows[csrow_idx];
mci               830 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               834 drivers/edac/edac_mc_sysfs.c 	for (i = 0; i < mci->n_layers; i++) {
mci               836 drivers/edac/edac_mc_sysfs.c 			     edac_layer_name[mci->layers[i].type],
mci               837 drivers/edac/edac_mc_sysfs.c 			     mci->layers[i].size - 1);
mci               878 drivers/edac/edac_mc_sysfs.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               883 drivers/edac/edac_mc_sysfs.c 	if (mci->get_sdram_scrub_rate)
mci               885 drivers/edac/edac_mc_sysfs.c 	if (mci->set_sdram_scrub_rate)
mci               918 drivers/edac/edac_mc_sysfs.c int edac_create_sysfs_mci_device(struct mem_ctl_info *mci,
mci               924 drivers/edac/edac_mc_sysfs.c 	mci->dev.type = &mci_attr_type;
mci               925 drivers/edac/edac_mc_sysfs.c 	device_initialize(&mci->dev);
mci               927 drivers/edac/edac_mc_sysfs.c 	mci->dev.parent = mci_pdev;
mci               928 drivers/edac/edac_mc_sysfs.c 	mci->dev.groups = groups;
mci               929 drivers/edac/edac_mc_sysfs.c 	dev_set_name(&mci->dev, "mc%d", mci->mc_idx);
mci               930 drivers/edac/edac_mc_sysfs.c 	dev_set_drvdata(&mci->dev, mci);
mci               931 drivers/edac/edac_mc_sysfs.c 	pm_runtime_forbid(&mci->dev);
mci               933 drivers/edac/edac_mc_sysfs.c 	err = device_add(&mci->dev);
mci               935 drivers/edac/edac_mc_sysfs.c 		edac_dbg(1, "failure: create device %s\n", dev_name(&mci->dev));
mci               936 drivers/edac/edac_mc_sysfs.c 		put_device(&mci->dev);
mci               940 drivers/edac/edac_mc_sysfs.c 	edac_dbg(0, "device %s created\n", dev_name(&mci->dev));
mci               945 drivers/edac/edac_mc_sysfs.c 	for (i = 0; i < mci->tot_dimms; i++) {
mci               946 drivers/edac/edac_mc_sysfs.c 		struct dimm_info *dimm = mci->dimms[i];
mci               951 drivers/edac/edac_mc_sysfs.c 		err = edac_create_dimm_object(mci, dimm, i);
mci               957 drivers/edac/edac_mc_sysfs.c 	err = edac_create_csrow_objects(mci);
mci               962 drivers/edac/edac_mc_sysfs.c 	edac_create_debugfs_nodes(mci);
mci               967 drivers/edac/edac_mc_sysfs.c 		struct dimm_info *dimm = mci->dimms[i];
mci               973 drivers/edac/edac_mc_sysfs.c 	device_unregister(&mci->dev);
mci               981 drivers/edac/edac_mc_sysfs.c void edac_remove_sysfs_mci_device(struct mem_ctl_info *mci)
mci               988 drivers/edac/edac_mc_sysfs.c 	edac_debugfs_remove_recursive(mci->debugfs);
mci               991 drivers/edac/edac_mc_sysfs.c 	edac_delete_csrow_objects(mci);
mci               994 drivers/edac/edac_mc_sysfs.c 	for (i = 0; i < mci->tot_dimms; i++) {
mci               995 drivers/edac/edac_mc_sysfs.c 		struct dimm_info *dimm = mci->dimms[i];
mci              1003 drivers/edac/edac_mc_sysfs.c void edac_unregister_sysfs(struct mem_ctl_info *mci)
mci              1005 drivers/edac/edac_mc_sysfs.c 	edac_dbg(1, "unregistering device %s\n", dev_name(&mci->dev));
mci              1006 drivers/edac/edac_mc_sysfs.c 	device_unregister(&mci->dev);
mci                28 drivers/edac/edac_module.h extern int edac_create_sysfs_mci_device(struct mem_ctl_info *mci,
mci                30 drivers/edac/edac_module.h extern void edac_remove_sysfs_mci_device(struct mem_ctl_info *mci);
mci                31 drivers/edac/edac_module.h void edac_unregister_sysfs(struct mem_ctl_info *mci);
mci                74 drivers/edac/edac_module.h void edac_create_debugfs_nodes(struct mem_ctl_info *mci);
mci                90 drivers/edac/edac_module.h static inline void edac_create_debugfs_nodes(struct mem_ctl_info *mci)		{ }
mci                63 drivers/edac/fsl_ddr_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                64 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci                73 drivers/edac/fsl_ddr_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                74 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci                83 drivers/edac/fsl_ddr_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                84 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci                93 drivers/edac/fsl_ddr_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci                94 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci               113 drivers/edac/fsl_ddr_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               114 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci               133 drivers/edac/fsl_ddr_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               134 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci               277 drivers/edac/fsl_ddr_edac.c static void fsl_mc_check(struct mem_ctl_info *mci)
mci               279 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci               296 drivers/edac/fsl_ddr_edac.c 	fsl_mc_printk(mci, KERN_ERR, "Err Detect Register: %#8.8x\n",
mci               320 drivers/edac/fsl_ddr_edac.c 	for (row_index = 0; row_index < mci->nr_csrows; row_index++) {
mci               321 drivers/edac/fsl_ddr_edac.c 		csrow = mci->csrows[row_index];
mci               338 drivers/edac/fsl_ddr_edac.c 			fsl_mc_printk(mci, KERN_ERR,
mci               341 drivers/edac/fsl_ddr_edac.c 			fsl_mc_printk(mci, KERN_ERR,
mci               344 drivers/edac/fsl_ddr_edac.c 		fsl_mc_printk(mci, KERN_ERR,
mci               351 drivers/edac/fsl_ddr_edac.c 	fsl_mc_printk(mci, KERN_ERR,
mci               354 drivers/edac/fsl_ddr_edac.c 	fsl_mc_printk(mci, KERN_ERR, "Err addr: %#8.8llx\n", err_addr);
mci               355 drivers/edac/fsl_ddr_edac.c 	fsl_mc_printk(mci, KERN_ERR, "PFN: %#8.8x\n", pfn);
mci               358 drivers/edac/fsl_ddr_edac.c 	if (row_index == mci->nr_csrows)
mci               359 drivers/edac/fsl_ddr_edac.c 		fsl_mc_printk(mci, KERN_ERR, "PFN out of range!\n");
mci               362 drivers/edac/fsl_ddr_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               365 drivers/edac/fsl_ddr_edac.c 				     mci->ctl_name, "");
mci               368 drivers/edac/fsl_ddr_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               371 drivers/edac/fsl_ddr_edac.c 				     mci->ctl_name, "");
mci               378 drivers/edac/fsl_ddr_edac.c 	struct mem_ctl_info *mci = dev_id;
mci               379 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci               386 drivers/edac/fsl_ddr_edac.c 	fsl_mc_check(mci);
mci               391 drivers/edac/fsl_ddr_edac.c static void fsl_ddr_init_csrows(struct mem_ctl_info *mci)
mci               393 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci               443 drivers/edac/fsl_ddr_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               447 drivers/edac/fsl_ddr_edac.c 		csrow = mci->csrows[index];
mci               478 drivers/edac/fsl_ddr_edac.c 	struct mem_ctl_info *mci;
mci               494 drivers/edac/fsl_ddr_edac.c 	mci = edac_mc_alloc(edac_mc_idx, ARRAY_SIZE(layers), layers,
mci               496 drivers/edac/fsl_ddr_edac.c 	if (!mci) {
mci               501 drivers/edac/fsl_ddr_edac.c 	pdata = mci->pvt_info;
mci               503 drivers/edac/fsl_ddr_edac.c 	mci->pdev = &op->dev;
mci               505 drivers/edac/fsl_ddr_edac.c 	dev_set_drvdata(mci->pdev, mci);
mci               506 drivers/edac/fsl_ddr_edac.c 	mci->ctl_name = pdata->name;
mci               507 drivers/edac/fsl_ddr_edac.c 	mci->dev_name = pdata->name;
mci               546 drivers/edac/fsl_ddr_edac.c 	mci->mtype_cap = MEM_FLAG_DDR | MEM_FLAG_RDDR |
mci               550 drivers/edac/fsl_ddr_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               551 drivers/edac/fsl_ddr_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               552 drivers/edac/fsl_ddr_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               555 drivers/edac/fsl_ddr_edac.c 		mci->edac_check = fsl_mc_check;
mci               557 drivers/edac/fsl_ddr_edac.c 	mci->ctl_page_to_phys = NULL;
mci               559 drivers/edac/fsl_ddr_edac.c 	mci->scrub_mode = SCRUB_SW_SRC;
mci               561 drivers/edac/fsl_ddr_edac.c 	fsl_ddr_init_csrows(mci);
mci               570 drivers/edac/fsl_ddr_edac.c 	res = edac_mc_add_mc_with_groups(mci, fsl_ddr_dev_groups);
mci               592 drivers/edac/fsl_ddr_edac.c 				       "[EDAC] MC err", mci);
mci               614 drivers/edac/fsl_ddr_edac.c 	edac_mc_free(mci);
mci               620 drivers/edac/fsl_ddr_edac.c 	struct mem_ctl_info *mci = dev_get_drvdata(&op->dev);
mci               621 drivers/edac/fsl_ddr_edac.c 	struct fsl_mc_pdata *pdata = mci->pvt_info;
mci               634 drivers/edac/fsl_ddr_edac.c 	edac_mc_free(mci);
mci                19 drivers/edac/fsl_ddr_edac.h #define fsl_mc_printk(mci, level, fmt, arg...) \
mci                20 drivers/edac/fsl_ddr_edac.h 	edac_mc_chipset_printk(mci, level, "FSL_DDR", fmt, ##arg)
mci                21 drivers/edac/ghes_edac.c 	struct mem_ctl_info *mci;
mci                79 drivers/edac/ghes_edac.c 	struct mem_ctl_info *mci;
mci                91 drivers/edac/ghes_edac.c static int get_dimm_smbios_index(struct mem_ctl_info *mci, u16 handle)
mci                95 drivers/edac/ghes_edac.c 	for (i = 0; i < mci->tot_dimms; i++) {
mci                96 drivers/edac/ghes_edac.c 		if (mci->dimms[i]->smbios_handle == handle)
mci               105 drivers/edac/ghes_edac.c 	struct mem_ctl_info *mci = dimm_fill->mci;
mci               109 drivers/edac/ghes_edac.c 		struct dimm_info *dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms,
mci               110 drivers/edac/ghes_edac.c 						       mci->n_layers,
mci               208 drivers/edac/ghes_edac.c 	struct mem_ctl_info *mci;
mci               228 drivers/edac/ghes_edac.c 	mci = pvt->mci;
mci               229 drivers/edac/ghes_edac.c 	e = &mci->error_desc;
mci               361 drivers/edac/ghes_edac.c 		index = get_dimm_smbios_index(mci, mem_err->mem_dev_handle);
mci               456 drivers/edac/ghes_edac.c 		       mci->mc_idx, e->top_layer, e->mid_layer, e->low_layer,
mci               460 drivers/edac/ghes_edac.c 	edac_raw_mc_handle_error(type, mci, e);
mci               478 drivers/edac/ghes_edac.c 	struct mem_ctl_info *mci;
mci               516 drivers/edac/ghes_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(struct ghes_edac_pvt));
mci               517 drivers/edac/ghes_edac.c 	if (!mci) {
mci               523 drivers/edac/ghes_edac.c 	pvt		= mci->pvt_info;
mci               525 drivers/edac/ghes_edac.c 	pvt->mci	= mci;
mci               527 drivers/edac/ghes_edac.c 	mci->pdev = dev;
mci               528 drivers/edac/ghes_edac.c 	mci->mtype_cap = MEM_FLAG_EMPTY;
mci               529 drivers/edac/ghes_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE;
mci               530 drivers/edac/ghes_edac.c 	mci->edac_cap = EDAC_FLAG_NONE;
mci               531 drivers/edac/ghes_edac.c 	mci->mod_name = "ghes_edac.c";
mci               532 drivers/edac/ghes_edac.c 	mci->ctl_name = "ghes_edac";
mci               533 drivers/edac/ghes_edac.c 	mci->dev_name = "ghes";
mci               550 drivers/edac/ghes_edac.c 		dimm_fill.mci = mci;
mci               553 drivers/edac/ghes_edac.c 		struct dimm_info *dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms,
mci               554 drivers/edac/ghes_edac.c 						       mci->n_layers, 0, 0, 0);
mci               563 drivers/edac/ghes_edac.c 	rc = edac_mc_add_mc(mci);
mci               566 drivers/edac/ghes_edac.c 		edac_mc_free(mci);
mci               586 drivers/edac/ghes_edac.c 	struct mem_ctl_info *mci;
mci               598 drivers/edac/ghes_edac.c 	mci = ghes_pvt ? ghes_pvt->mci : NULL;
mci               602 drivers/edac/ghes_edac.c 	if (!mci)
mci               605 drivers/edac/ghes_edac.c 	mci = edac_mc_del_mc(mci->pdev);
mci               606 drivers/edac/ghes_edac.c 	if (mci)
mci               607 drivers/edac/ghes_edac.c 		edac_mc_free(mci);
mci                55 drivers/edac/highbank_mc_edac.c 	struct mem_ctl_info *mci = dev_id;
mci                56 drivers/edac/highbank_mc_edac.c 	struct hb_mc_drvdata *drvdata = mci->pvt_info;
mci                64 drivers/edac/highbank_mc_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci                68 drivers/edac/highbank_mc_edac.c 				     mci->ctl_name, "");
mci                74 drivers/edac/highbank_mc_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci                78 drivers/edac/highbank_mc_edac.c 				     mci->ctl_name, "");
mci                86 drivers/edac/highbank_mc_edac.c static void highbank_mc_err_inject(struct mem_ctl_info *mci, u8 synd)
mci                88 drivers/edac/highbank_mc_edac.c 	struct hb_mc_drvdata *pdata = mci->pvt_info;
mci               102 drivers/edac/highbank_mc_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               108 drivers/edac/highbank_mc_edac.c 	highbank_mc_err_inject(mci, synd);
mci               149 drivers/edac/highbank_mc_edac.c 	struct mem_ctl_info *mci;
mci               168 drivers/edac/highbank_mc_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers,
mci               170 drivers/edac/highbank_mc_edac.c 	if (!mci)
mci               173 drivers/edac/highbank_mc_edac.c 	mci->pdev = &pdev->dev;
mci               174 drivers/edac/highbank_mc_edac.c 	drvdata = mci->pvt_info;
mci               175 drivers/edac/highbank_mc_edac.c 	platform_set_drvdata(pdev, mci);
mci               212 drivers/edac/highbank_mc_edac.c 	mci->mtype_cap = MEM_FLAG_DDR3;
mci               213 drivers/edac/highbank_mc_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               214 drivers/edac/highbank_mc_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               215 drivers/edac/highbank_mc_edac.c 	mci->mod_name = pdev->dev.driver->name;
mci               216 drivers/edac/highbank_mc_edac.c 	mci->ctl_name = id->compatible;
mci               217 drivers/edac/highbank_mc_edac.c 	mci->dev_name = dev_name(&pdev->dev);
mci               218 drivers/edac/highbank_mc_edac.c 	mci->scrub_mode = SCRUB_SW_SRC;
mci               221 drivers/edac/highbank_mc_edac.c 	dimm = *mci->dimms;
mci               228 drivers/edac/highbank_mc_edac.c 	res = edac_mc_add_mc_with_groups(mci, highbank_dev_groups);
mci               234 drivers/edac/highbank_mc_edac.c 			       0, dev_name(&pdev->dev), mci);
mci               246 drivers/edac/highbank_mc_edac.c 	edac_mc_free(mci);
mci               252 drivers/edac/highbank_mc_edac.c 	struct mem_ctl_info *mci = platform_get_drvdata(pdev);
mci               255 drivers/edac/highbank_mc_edac.c 	edac_mc_free(mci);
mci               143 drivers/edac/i10nm_base.c static int i10nm_get_dimm_config(struct mem_ctl_info *mci)
mci               145 drivers/edac/i10nm_base.c 	struct skx_pvt *pvt = mci->pvt_info;
mci               157 drivers/edac/i10nm_base.c 			dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms,
mci               158 drivers/edac/i10nm_base.c 					     mci->n_layers, i, j, 0);
mci               190 drivers/edac/i3000_edac.c static void i3000_get_error_info(struct mem_ctl_info *mci,
mci               195 drivers/edac/i3000_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               230 drivers/edac/i3000_edac.c static int i3000_process_error_info(struct mem_ctl_info *mci,
mci               237 drivers/edac/i3000_edac.c 	multi_chan = mci->csrows[0]->nr_channels - 1;
mci               246 drivers/edac/i3000_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               256 drivers/edac/i3000_edac.c 	row = edac_mc_find_csrow_by_page(mci, pfn);
mci               259 drivers/edac/i3000_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               264 drivers/edac/i3000_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               272 drivers/edac/i3000_edac.c static void i3000_check(struct mem_ctl_info *mci)
mci               276 drivers/edac/i3000_edac.c 	edac_dbg(1, "MC%d\n", mci->mc_idx);
mci               277 drivers/edac/i3000_edac.c 	i3000_get_error_info(mci, &info);
mci               278 drivers/edac/i3000_edac.c 	i3000_process_error_info(mci, &info, 1);
mci               313 drivers/edac/i3000_edac.c 	struct mem_ctl_info *mci = NULL;
mci               363 drivers/edac/i3000_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, 0);
mci               364 drivers/edac/i3000_edac.c 	if (!mci)
mci               369 drivers/edac/i3000_edac.c 	mci->pdev = &pdev->dev;
mci               370 drivers/edac/i3000_edac.c 	mci->mtype_cap = MEM_FLAG_DDR2;
mci               372 drivers/edac/i3000_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_SECDED;
mci               373 drivers/edac/i3000_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               375 drivers/edac/i3000_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               376 drivers/edac/i3000_edac.c 	mci->ctl_name = i3000_devs[dev_idx].ctl_name;
mci               377 drivers/edac/i3000_edac.c 	mci->dev_name = pci_name(pdev);
mci               378 drivers/edac/i3000_edac.c 	mci->edac_check = i3000_check;
mci               379 drivers/edac/i3000_edac.c 	mci->ctl_page_to_phys = NULL;
mci               390 drivers/edac/i3000_edac.c 	for (last_cumul_size = i = 0; i < mci->nr_csrows; i++) {
mci               393 drivers/edac/i3000_edac.c 		struct csrow_info *csrow = mci->csrows[i];
mci               427 drivers/edac/i3000_edac.c 	if (edac_mc_add_mc(mci)) {
mci               448 drivers/edac/i3000_edac.c 	if (mci)
mci               449 drivers/edac/i3000_edac.c 		edac_mc_free(mci);
mci               473 drivers/edac/i3000_edac.c 	struct mem_ctl_info *mci;
mci               480 drivers/edac/i3000_edac.c 	mci = edac_mc_del_mc(&pdev->dev);
mci               481 drivers/edac/i3000_edac.c 	if (!mci)
mci               484 drivers/edac/i3000_edac.c 	edac_mc_free(mci);
mci               166 drivers/edac/i3200_edac.c static void i3200_clear_error_info(struct mem_ctl_info *mci)
mci               170 drivers/edac/i3200_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               180 drivers/edac/i3200_edac.c static void i3200_get_and_clear_error_info(struct mem_ctl_info *mci,
mci               184 drivers/edac/i3200_edac.c 	struct i3200_priv *priv = mci->pvt_info;
mci               187 drivers/edac/i3200_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               216 drivers/edac/i3200_edac.c 	i3200_clear_error_info(mci);
mci               219 drivers/edac/i3200_edac.c static void i3200_process_error_info(struct mem_ctl_info *mci,
mci               229 drivers/edac/i3200_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               237 drivers/edac/i3200_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               243 drivers/edac/i3200_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               252 drivers/edac/i3200_edac.c static void i3200_check(struct mem_ctl_info *mci)
mci               256 drivers/edac/i3200_edac.c 	edac_dbg(1, "MC%d\n", mci->mc_idx);
mci               257 drivers/edac/i3200_edac.c 	i3200_get_and_clear_error_info(mci, &info);
mci               258 drivers/edac/i3200_edac.c 	i3200_process_error_info(mci, &info);
mci               340 drivers/edac/i3200_edac.c 	struct mem_ctl_info *mci = NULL;
mci               362 drivers/edac/i3200_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers,
mci               364 drivers/edac/i3200_edac.c 	if (!mci)
mci               369 drivers/edac/i3200_edac.c 	mci->pdev = &pdev->dev;
mci               370 drivers/edac/i3200_edac.c 	mci->mtype_cap = MEM_FLAG_DDR2;
mci               372 drivers/edac/i3200_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_SECDED;
mci               373 drivers/edac/i3200_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               375 drivers/edac/i3200_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               376 drivers/edac/i3200_edac.c 	mci->ctl_name = i3200_devs[dev_idx].ctl_name;
mci               377 drivers/edac/i3200_edac.c 	mci->dev_name = pci_name(pdev);
mci               378 drivers/edac/i3200_edac.c 	mci->edac_check = i3200_check;
mci               379 drivers/edac/i3200_edac.c 	mci->ctl_page_to_phys = NULL;
mci               380 drivers/edac/i3200_edac.c 	priv = mci->pvt_info;
mci               395 drivers/edac/i3200_edac.c 			struct dimm_info *dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms,
mci               396 drivers/edac/i3200_edac.c 							       mci->n_layers, i, j, 0);
mci               413 drivers/edac/i3200_edac.c 	i3200_clear_error_info(mci);
mci               416 drivers/edac/i3200_edac.c 	if (edac_mc_add_mc(mci)) {
mci               427 drivers/edac/i3200_edac.c 	if (mci)
mci               428 drivers/edac/i3200_edac.c 		edac_mc_free(mci);
mci               451 drivers/edac/i3200_edac.c 	struct mem_ctl_info *mci;
mci               456 drivers/edac/i3200_edac.c 	mci = edac_mc_del_mc(&pdev->dev);
mci               457 drivers/edac/i3200_edac.c 	if (!mci)
mci               460 drivers/edac/i3200_edac.c 	priv = mci->pvt_info;
mci               463 drivers/edac/i3200_edac.c 	edac_mc_free(mci);
mci                36 drivers/edac/i5000_edac.c #define i5000_mc_printk(mci, level, fmt, arg...) \
mci                37 drivers/edac/i5000_edac.c         edac_mc_chipset_printk(mci, level, "i5000", fmt, ##arg)
mci               385 drivers/edac/i5000_edac.c static void i5000_get_error_info(struct mem_ctl_info *mci,
mci               391 drivers/edac/i5000_edac.c 	pvt = mci->pvt_info;
mci               460 drivers/edac/i5000_edac.c static void i5000_process_fatal_error_info(struct mem_ctl_info *mci,
mci               528 drivers/edac/i5000_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_FATAL, mci, 1, 0, 0, 0,
mci               541 drivers/edac/i5000_edac.c static void i5000_process_nonfatal_error_info(struct mem_ctl_info *mci,
mci               627 drivers/edac/i5000_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               681 drivers/edac/i5000_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, 0, 0, 0,
mci               727 drivers/edac/i5000_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, 0, 0, 0,
mci               737 drivers/edac/i5000_edac.c static void i5000_process_error_info(struct mem_ctl_info *mci,
mci               742 drivers/edac/i5000_edac.c 	i5000_process_fatal_error_info(mci, info, handle_errors);
mci               745 drivers/edac/i5000_edac.c 	i5000_process_nonfatal_error_info(mci, info, handle_errors);
mci               754 drivers/edac/i5000_edac.c static void i5000_clear_error(struct mem_ctl_info *mci)
mci               758 drivers/edac/i5000_edac.c 	i5000_get_error_info(mci, &info);
mci               765 drivers/edac/i5000_edac.c static void i5000_check_error(struct mem_ctl_info *mci)
mci               768 drivers/edac/i5000_edac.c 	edac_dbg(4, "MC%d\n", mci->mc_idx);
mci               769 drivers/edac/i5000_edac.c 	i5000_get_error_info(mci, &info);
mci               770 drivers/edac/i5000_edac.c 	i5000_process_error_info(mci, &info, 1);
mci               779 drivers/edac/i5000_edac.c static int i5000_get_devices(struct mem_ctl_info *mci, int dev_idx)
mci               785 drivers/edac/i5000_edac.c 	pvt = mci->pvt_info;
mci               899 drivers/edac/i5000_edac.c static void i5000_put_devices(struct mem_ctl_info *mci)
mci               903 drivers/edac/i5000_edac.c 	pvt = mci->pvt_info;
mci              1131 drivers/edac/i5000_edac.c static void i5000_get_mc_regs(struct mem_ctl_info *mci)
mci              1139 drivers/edac/i5000_edac.c 	pvt = mci->pvt_info;
mci              1247 drivers/edac/i5000_edac.c static int i5000_init_csrows(struct mem_ctl_info *mci)
mci              1258 drivers/edac/i5000_edac.c 	pvt = mci->pvt_info;
mci              1278 drivers/edac/i5000_edac.c 			dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers,
mci              1308 drivers/edac/i5000_edac.c static void i5000_enable_error_reporting(struct mem_ctl_info *mci)
mci              1313 drivers/edac/i5000_edac.c 	pvt = mci->pvt_info;
mci              1357 drivers/edac/i5000_edac.c 	struct mem_ctl_info *mci;
mci              1401 drivers/edac/i5000_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt));
mci              1402 drivers/edac/i5000_edac.c 	if (mci == NULL)
mci              1405 drivers/edac/i5000_edac.c 	edac_dbg(0, "MC: mci = %p\n", mci);
mci              1407 drivers/edac/i5000_edac.c 	mci->pdev = &pdev->dev;	/* record ptr  to the generic device */
mci              1409 drivers/edac/i5000_edac.c 	pvt = mci->pvt_info;
mci              1415 drivers/edac/i5000_edac.c 	if (i5000_get_devices(mci, dev_idx))
mci              1419 drivers/edac/i5000_edac.c 	i5000_get_mc_regs(mci);	/* retrieve the hardware registers */
mci              1421 drivers/edac/i5000_edac.c 	mci->mc_idx = 0;
mci              1422 drivers/edac/i5000_edac.c 	mci->mtype_cap = MEM_FLAG_FB_DDR2;
mci              1423 drivers/edac/i5000_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE;
mci              1424 drivers/edac/i5000_edac.c 	mci->edac_cap = EDAC_FLAG_NONE;
mci              1425 drivers/edac/i5000_edac.c 	mci->mod_name = "i5000_edac.c";
mci              1426 drivers/edac/i5000_edac.c 	mci->ctl_name = i5000_devs[dev_idx].ctl_name;
mci              1427 drivers/edac/i5000_edac.c 	mci->dev_name = pci_name(pdev);
mci              1428 drivers/edac/i5000_edac.c 	mci->ctl_page_to_phys = NULL;
mci              1431 drivers/edac/i5000_edac.c 	mci->edac_check = i5000_check_error;
mci              1435 drivers/edac/i5000_edac.c 	if (i5000_init_csrows(mci)) {
mci              1437 drivers/edac/i5000_edac.c 		mci->edac_cap = EDAC_FLAG_NONE;	/* no csrows found */
mci              1440 drivers/edac/i5000_edac.c 		i5000_enable_error_reporting(mci);
mci              1444 drivers/edac/i5000_edac.c 	if (edac_mc_add_mc(mci)) {
mci              1452 drivers/edac/i5000_edac.c 	i5000_clear_error(mci);
mci              1470 drivers/edac/i5000_edac.c 	i5000_put_devices(mci);
mci              1473 drivers/edac/i5000_edac.c 	edac_mc_free(mci);
mci              1505 drivers/edac/i5000_edac.c 	struct mem_ctl_info *mci;
mci              1512 drivers/edac/i5000_edac.c 	if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL)
mci              1516 drivers/edac/i5000_edac.c 	i5000_put_devices(mci);
mci              1517 drivers/edac/i5000_edac.c 	edac_mc_free(mci);
mci               366 drivers/edac/i5100_edac.c static int i5100_rank_to_slot(const struct mem_ctl_info *mci,
mci               369 drivers/edac/i5100_edac.c 	const struct i5100_priv *priv = mci->pvt_info;
mci               420 drivers/edac/i5100_edac.c static unsigned int i5100_csrow_to_rank(const struct mem_ctl_info *mci,
mci               423 drivers/edac/i5100_edac.c 	const struct i5100_priv *priv = mci->pvt_info;
mci               429 drivers/edac/i5100_edac.c static unsigned int i5100_csrow_to_chan(const struct mem_ctl_info *mci,
mci               432 drivers/edac/i5100_edac.c 	const struct i5100_priv *priv = mci->pvt_info;
mci               437 drivers/edac/i5100_edac.c static void i5100_handle_ce(struct mem_ctl_info *mci,
mci               453 drivers/edac/i5100_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               459 drivers/edac/i5100_edac.c static void i5100_handle_ue(struct mem_ctl_info *mci,
mci               475 drivers/edac/i5100_edac.c 	edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               481 drivers/edac/i5100_edac.c static void i5100_read_log(struct mem_ctl_info *mci, int chan,
mci               484 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               524 drivers/edac/i5100_edac.c 		i5100_handle_ce(mci, chan, bank, rank, syndrome, cas, ras, msg);
mci               546 drivers/edac/i5100_edac.c 		i5100_handle_ue(mci, chan, bank, rank, syndrome, cas, ras, msg);
mci               552 drivers/edac/i5100_edac.c static void i5100_check_error(struct mem_ctl_info *mci)
mci               554 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               562 drivers/edac/i5100_edac.c 		i5100_read_log(mci, i5100_ferr_nf_mem_chan_indx(dw),
mci               604 drivers/edac/i5100_edac.c static int i5100_set_scrub_rate(struct mem_ctl_info *mci, u32 bandwidth)
mci               606 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               629 drivers/edac/i5100_edac.c static int i5100_get_scrub_rate(struct mem_ctl_info *mci)
mci               631 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               658 drivers/edac/i5100_edac.c static unsigned long i5100_npages(struct mem_ctl_info *mci, unsigned int csrow)
mci               660 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               661 drivers/edac/i5100_edac.c 	const unsigned int chan_rank = i5100_csrow_to_rank(mci, csrow);
mci               662 drivers/edac/i5100_edac.c 	const unsigned int chan = i5100_csrow_to_chan(mci, csrow);
mci               679 drivers/edac/i5100_edac.c static void i5100_init_mtr(struct mem_ctl_info *mci)
mci               681 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               711 drivers/edac/i5100_edac.c static int i5100_read_spd_byte(const struct mem_ctl_info *mci,
mci               714 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               751 drivers/edac/i5100_edac.c static void i5100_init_dimm_csmap(struct mem_ctl_info *mci)
mci               753 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               782 drivers/edac/i5100_edac.c 				   struct mem_ctl_info *mci)
mci               784 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               793 drivers/edac/i5100_edac.c 			if (i5100_read_spd_byte(mci, i, j, 5, &rank) < 0)
mci               800 drivers/edac/i5100_edac.c 	i5100_init_dimm_csmap(mci);
mci               804 drivers/edac/i5100_edac.c 				    struct mem_ctl_info *mci)
mci               808 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               846 drivers/edac/i5100_edac.c 	i5100_init_mtr(mci);
mci               849 drivers/edac/i5100_edac.c static void i5100_init_csrows(struct mem_ctl_info *mci)
mci               852 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               854 drivers/edac/i5100_edac.c 	for (i = 0; i < mci->tot_dimms; i++) {
mci               856 drivers/edac/i5100_edac.c 		const unsigned long npages = i5100_npages(mci, i);
mci               857 drivers/edac/i5100_edac.c 		const unsigned int chan = i5100_csrow_to_chan(mci, i);
mci               858 drivers/edac/i5100_edac.c 		const unsigned int rank = i5100_csrow_to_rank(mci, i);
mci               863 drivers/edac/i5100_edac.c 		dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers,
mci               873 drivers/edac/i5100_edac.c 			 i5100_rank_to_slot(mci, chan, rank));
mci               884 drivers/edac/i5100_edac.c static void i5100_do_inject(struct mem_ctl_info *mci)
mci               886 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               949 drivers/edac/i5100_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               951 drivers/edac/i5100_edac.c 	i5100_do_inject(mci);
mci               962 drivers/edac/i5100_edac.c static int i5100_setup_debugfs(struct mem_ctl_info *mci)
mci               964 drivers/edac/i5100_edac.c 	struct i5100_priv *priv = mci->pvt_info;
mci               969 drivers/edac/i5100_edac.c 	priv->debugfs = edac_debugfs_create_dir_at(mci->bus->name, i5100_debugfs);
mci               987 drivers/edac/i5100_edac.c 				&mci->dev, &i5100_inject_enable_fops);
mci               996 drivers/edac/i5100_edac.c 	struct mem_ctl_info *mci;
mci              1064 drivers/edac/i5100_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers,
mci              1066 drivers/edac/i5100_edac.c 	if (!mci) {
mci              1087 drivers/edac/i5100_edac.c 	mci->pdev = &pdev->dev;
mci              1089 drivers/edac/i5100_edac.c 	priv = mci->pvt_info;
mci              1106 drivers/edac/i5100_edac.c 	i5100_init_dimm_layout(pdev, mci);
mci              1107 drivers/edac/i5100_edac.c 	i5100_init_interleaving(pdev, mci);
mci              1109 drivers/edac/i5100_edac.c 	mci->mtype_cap = MEM_FLAG_FB_DDR2;
mci              1110 drivers/edac/i5100_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_SECDED;
mci              1111 drivers/edac/i5100_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci              1112 drivers/edac/i5100_edac.c 	mci->mod_name = "i5100_edac.c";
mci              1113 drivers/edac/i5100_edac.c 	mci->ctl_name = "i5100";
mci              1114 drivers/edac/i5100_edac.c 	mci->dev_name = pci_name(pdev);
mci              1115 drivers/edac/i5100_edac.c 	mci->ctl_page_to_phys = NULL;
mci              1117 drivers/edac/i5100_edac.c 	mci->edac_check = i5100_check_error;
mci              1118 drivers/edac/i5100_edac.c 	mci->set_sdram_scrub_rate = i5100_set_scrub_rate;
mci              1119 drivers/edac/i5100_edac.c 	mci->get_sdram_scrub_rate = i5100_get_scrub_rate;
mci              1128 drivers/edac/i5100_edac.c 	i5100_init_csrows(mci);
mci              1140 drivers/edac/i5100_edac.c 	if (edac_mc_add_mc(mci)) {
mci              1145 drivers/edac/i5100_edac.c 	i5100_setup_debugfs(mci);
mci              1152 drivers/edac/i5100_edac.c 	edac_mc_free(mci);
mci              1181 drivers/edac/i5100_edac.c 	struct mem_ctl_info *mci;
mci              1184 drivers/edac/i5100_edac.c 	mci = edac_mc_del_mc(&pdev->dev);
mci              1186 drivers/edac/i5100_edac.c 	if (!mci)
mci              1189 drivers/edac/i5100_edac.c 	priv = mci->pvt_info;
mci              1204 drivers/edac/i5100_edac.c 	edac_mc_free(mci);
mci                47 drivers/edac/i5400_edac.c #define i5400_mc_printk(mci, level, fmt, arg...) \
mci                48 drivers/edac/i5400_edac.c 	edac_mc_chipset_printk(mci, level, "i5400", fmt, ##arg)
mci               435 drivers/edac/i5400_edac.c static void i5400_get_error_info(struct mem_ctl_info *mci,
mci               441 drivers/edac/i5400_edac.c 	pvt = mci->pvt_info;
mci               511 drivers/edac/i5400_edac.c static void i5400_proccess_non_recoverable_info(struct mem_ctl_info *mci,
mci               563 drivers/edac/i5400_edac.c 	edac_mc_handle_error(tp_event, mci, 1, 0, 0, 0,
mci               576 drivers/edac/i5400_edac.c static void i5400_process_nonfatal_error_info(struct mem_ctl_info *mci,
mci               597 drivers/edac/i5400_edac.c 		i5400_proccess_non_recoverable_info(mci, info, allErrors);
mci               635 drivers/edac/i5400_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, 0, 0, 0,
mci               648 drivers/edac/i5400_edac.c 	i5400_mc_printk(mci, KERN_EMERG,
mci               657 drivers/edac/i5400_edac.c static void i5400_process_error_info(struct mem_ctl_info *mci,
mci               663 drivers/edac/i5400_edac.c 	i5400_proccess_non_recoverable_info(mci, info, allErrors);
mci               666 drivers/edac/i5400_edac.c 	i5400_process_nonfatal_error_info(mci, info);
mci               675 drivers/edac/i5400_edac.c static void i5400_clear_error(struct mem_ctl_info *mci)
mci               679 drivers/edac/i5400_edac.c 	i5400_get_error_info(mci, &info);
mci               686 drivers/edac/i5400_edac.c static void i5400_check_error(struct mem_ctl_info *mci)
mci               689 drivers/edac/i5400_edac.c 	edac_dbg(4, "MC%d\n", mci->mc_idx);
mci               690 drivers/edac/i5400_edac.c 	i5400_get_error_info(mci, &info);
mci               691 drivers/edac/i5400_edac.c 	i5400_process_error_info(mci, &info);
mci               698 drivers/edac/i5400_edac.c static void i5400_put_devices(struct mem_ctl_info *mci)
mci               702 drivers/edac/i5400_edac.c 	pvt = mci->pvt_info;
mci               717 drivers/edac/i5400_edac.c static int i5400_get_devices(struct mem_ctl_info *mci, int dev_idx)
mci               722 drivers/edac/i5400_edac.c 	pvt = mci->pvt_info;
mci              1051 drivers/edac/i5400_edac.c static void i5400_get_mc_regs(struct mem_ctl_info *mci)
mci              1061 drivers/edac/i5400_edac.c 	pvt = mci->pvt_info;
mci              1169 drivers/edac/i5400_edac.c static int i5400_init_dimms(struct mem_ctl_info *mci)
mci              1179 drivers/edac/i5400_edac.c 	pvt = mci->pvt_info;
mci              1190 drivers/edac/i5400_edac.c 	for (channel = 0; channel < mci->layers[0].size * mci->layers[1].size;
mci              1192 drivers/edac/i5400_edac.c 		for (slot = 0; slot < mci->layers[2].size; slot++) {
mci              1199 drivers/edac/i5400_edac.c 			dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers,
mci              1228 drivers/edac/i5400_edac.c 		mci->dimms[0]->edac_mode = EDAC_SECDED;
mci              1237 drivers/edac/i5400_edac.c static void i5400_enable_error_reporting(struct mem_ctl_info *mci)
mci              1242 drivers/edac/i5400_edac.c 	pvt = mci->pvt_info;
mci              1264 drivers/edac/i5400_edac.c 	struct mem_ctl_info *mci;
mci              1293 drivers/edac/i5400_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt));
mci              1294 drivers/edac/i5400_edac.c 	if (mci == NULL)
mci              1297 drivers/edac/i5400_edac.c 	edac_dbg(0, "MC: mci = %p\n", mci);
mci              1299 drivers/edac/i5400_edac.c 	mci->pdev = &pdev->dev;	/* record ptr  to the generic device */
mci              1301 drivers/edac/i5400_edac.c 	pvt = mci->pvt_info;
mci              1307 drivers/edac/i5400_edac.c 	if (i5400_get_devices(mci, dev_idx))
mci              1311 drivers/edac/i5400_edac.c 	i5400_get_mc_regs(mci);	/* retrieve the hardware registers */
mci              1313 drivers/edac/i5400_edac.c 	mci->mc_idx = 0;
mci              1314 drivers/edac/i5400_edac.c 	mci->mtype_cap = MEM_FLAG_FB_DDR2;
mci              1315 drivers/edac/i5400_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE;
mci              1316 drivers/edac/i5400_edac.c 	mci->edac_cap = EDAC_FLAG_NONE;
mci              1317 drivers/edac/i5400_edac.c 	mci->mod_name = "i5400_edac.c";
mci              1318 drivers/edac/i5400_edac.c 	mci->ctl_name = i5400_devs[dev_idx].ctl_name;
mci              1319 drivers/edac/i5400_edac.c 	mci->dev_name = pci_name(pdev);
mci              1320 drivers/edac/i5400_edac.c 	mci->ctl_page_to_phys = NULL;
mci              1323 drivers/edac/i5400_edac.c 	mci->edac_check = i5400_check_error;
mci              1327 drivers/edac/i5400_edac.c 	if (i5400_init_dimms(mci)) {
mci              1329 drivers/edac/i5400_edac.c 		mci->edac_cap = EDAC_FLAG_NONE;	/* no dimms found */
mci              1332 drivers/edac/i5400_edac.c 		i5400_enable_error_reporting(mci);
mci              1336 drivers/edac/i5400_edac.c 	if (edac_mc_add_mc(mci)) {
mci              1344 drivers/edac/i5400_edac.c 	i5400_clear_error(mci);
mci              1362 drivers/edac/i5400_edac.c 	i5400_put_devices(mci);
mci              1365 drivers/edac/i5400_edac.c 	edac_mc_free(mci);
mci              1397 drivers/edac/i5400_edac.c 	struct mem_ctl_info *mci;
mci              1404 drivers/edac/i5400_edac.c 	mci = edac_mc_del_mc(&pdev->dev);
mci              1405 drivers/edac/i5400_edac.c 	if (!mci)
mci              1409 drivers/edac/i5400_edac.c 	i5400_put_devices(mci);
mci              1413 drivers/edac/i5400_edac.c 	edac_mc_free(mci);
mci                39 drivers/edac/i7300_edac.c #define i7300_mc_printk(mci, level, fmt, arg...) \
mci                40 drivers/edac/i7300_edac.c 	edac_mc_chipset_printk(mci, level, "i7300", fmt, ##arg)
mci               351 drivers/edac/i7300_edac.c static void i7300_process_error_global(struct mem_ctl_info *mci)
mci               359 drivers/edac/i7300_edac.c 	pvt = mci->pvt_info;
mci               396 drivers/edac/i7300_edac.c 	i7300_mc_printk(mci, KERN_EMERG, "%s misc error: %s\n",
mci               406 drivers/edac/i7300_edac.c static void i7300_process_fbd_error(struct mem_ctl_info *mci)
mci               418 drivers/edac/i7300_edac.c 	pvt = mci->pvt_info;
mci               449 drivers/edac/i7300_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_FATAL, mci, 1, 0, 0, 0,
mci               496 drivers/edac/i7300_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, 0, 0,
mci               509 drivers/edac/i7300_edac.c static void i7300_check_error(struct mem_ctl_info *mci)
mci               511 drivers/edac/i7300_edac.c 	i7300_process_error_global(mci);
mci               512 drivers/edac/i7300_edac.c 	i7300_process_fbd_error(mci);
mci               519 drivers/edac/i7300_edac.c static void i7300_clear_error(struct mem_ctl_info *mci)
mci               521 drivers/edac/i7300_edac.c 	struct i7300_pvt *pvt = mci->pvt_info;
mci               556 drivers/edac/i7300_edac.c static void i7300_enable_error_reporting(struct mem_ctl_info *mci)
mci               558 drivers/edac/i7300_edac.c 	struct i7300_pvt *pvt = mci->pvt_info;
mci               745 drivers/edac/i7300_edac.c static int i7300_init_csrows(struct mem_ctl_info *mci)
mci               754 drivers/edac/i7300_edac.c 	pvt = mci->pvt_info;
mci               797 drivers/edac/i7300_edac.c 				dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms,
mci               798 drivers/edac/i7300_edac.c 					       mci->n_layers, branch, ch, slot);
mci               839 drivers/edac/i7300_edac.c static int i7300_get_mc_regs(struct mem_ctl_info *mci)
mci               845 drivers/edac/i7300_edac.c 	pvt = mci->pvt_info;
mci               891 drivers/edac/i7300_edac.c 	rc = i7300_init_csrows(mci);
mci               910 drivers/edac/i7300_edac.c static void i7300_put_devices(struct mem_ctl_info *mci)
mci               915 drivers/edac/i7300_edac.c 	pvt = mci->pvt_info;
mci               935 drivers/edac/i7300_edac.c static int i7300_get_devices(struct mem_ctl_info *mci)
mci               940 drivers/edac/i7300_edac.c 	pvt = mci->pvt_info;
mci              1013 drivers/edac/i7300_edac.c 	i7300_put_devices(mci);
mci              1024 drivers/edac/i7300_edac.c 	struct mem_ctl_info *mci;
mci              1052 drivers/edac/i7300_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt));
mci              1053 drivers/edac/i7300_edac.c 	if (mci == NULL)
mci              1056 drivers/edac/i7300_edac.c 	edac_dbg(0, "MC: mci = %p\n", mci);
mci              1058 drivers/edac/i7300_edac.c 	mci->pdev = &pdev->dev;	/* record ptr  to the generic device */
mci              1060 drivers/edac/i7300_edac.c 	pvt = mci->pvt_info;
mci              1065 drivers/edac/i7300_edac.c 		edac_mc_free(mci);
mci              1070 drivers/edac/i7300_edac.c 	if (i7300_get_devices(mci))
mci              1073 drivers/edac/i7300_edac.c 	mci->mc_idx = 0;
mci              1074 drivers/edac/i7300_edac.c 	mci->mtype_cap = MEM_FLAG_FB_DDR2;
mci              1075 drivers/edac/i7300_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE;
mci              1076 drivers/edac/i7300_edac.c 	mci->edac_cap = EDAC_FLAG_NONE;
mci              1077 drivers/edac/i7300_edac.c 	mci->mod_name = "i7300_edac.c";
mci              1078 drivers/edac/i7300_edac.c 	mci->ctl_name = i7300_devs[0].ctl_name;
mci              1079 drivers/edac/i7300_edac.c 	mci->dev_name = pci_name(pdev);
mci              1080 drivers/edac/i7300_edac.c 	mci->ctl_page_to_phys = NULL;
mci              1083 drivers/edac/i7300_edac.c 	mci->edac_check = i7300_check_error;
mci              1087 drivers/edac/i7300_edac.c 	if (i7300_get_mc_regs(mci)) {
mci              1089 drivers/edac/i7300_edac.c 		mci->edac_cap = EDAC_FLAG_NONE;	/* no csrows found */
mci              1092 drivers/edac/i7300_edac.c 		i7300_enable_error_reporting(mci);
mci              1096 drivers/edac/i7300_edac.c 	if (edac_mc_add_mc(mci)) {
mci              1104 drivers/edac/i7300_edac.c 	i7300_clear_error(mci);
mci              1122 drivers/edac/i7300_edac.c 	i7300_put_devices(mci);
mci              1126 drivers/edac/i7300_edac.c 	edac_mc_free(mci);
mci              1136 drivers/edac/i7300_edac.c 	struct mem_ctl_info *mci;
mci              1144 drivers/edac/i7300_edac.c 	mci = edac_mc_del_mc(&pdev->dev);
mci              1145 drivers/edac/i7300_edac.c 	if (!mci)
mci              1148 drivers/edac/i7300_edac.c 	tmp = ((struct i7300_pvt *)mci->pvt_info)->tmp_prt_buffer;
mci              1151 drivers/edac/i7300_edac.c 	i7300_put_devices(mci);
mci              1154 drivers/edac/i7300_edac.c 	edac_mc_free(mci);
mci                71 drivers/edac/i7core_edac.c #define i7core_mc_printk(mci, level, fmt, arg...)		\
mci                72 drivers/edac/i7core_edac.c 	edac_mc_chipset_printk(mci, level, "i7core", fmt, ##arg)
mci               245 drivers/edac/i7core_edac.c 	struct mem_ctl_info	*mci;
mci               487 drivers/edac/i7core_edac.c static int get_dimm_config(struct mem_ctl_info *mci)
mci               489 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci               588 drivers/edac/i7core_edac.c 			dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers,
mci               661 drivers/edac/i7core_edac.c static int disable_inject(const struct mem_ctl_info *mci)
mci               663 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci               687 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               688 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci               693 drivers/edac/i7core_edac.c 		disable_inject(mci);
mci               707 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               708 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci               724 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               725 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci               730 drivers/edac/i7core_edac.c 		disable_inject(mci);
mci               744 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               745 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci               764 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               765 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci               770 drivers/edac/i7core_edac.c 		disable_inject(mci);
mci               784 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               785 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci               807 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = dev_get_drvdata(dev);	\
mci               813 drivers/edac/i7core_edac.c 	pvt = mci->pvt_info;					\
mci               816 drivers/edac/i7core_edac.c 		disable_inject(mci);				\
mci               836 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = dev_get_drvdata(dev);	\
mci               839 drivers/edac/i7core_edac.c 	pvt = mci->pvt_info;					\
mci               915 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               916 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci               932 drivers/edac/i7core_edac.c 		disable_inject(mci);
mci              1019 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci              1020 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              1043 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = dev_get_drvdata(dev);	\
mci              1044 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;			\
mci              1158 drivers/edac/i7core_edac.c static int i7core_create_sysfs_devices(struct mem_ctl_info *mci)
mci              1160 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              1168 drivers/edac/i7core_edac.c 	pvt->addrmatch_dev->bus = mci->dev.bus;
mci              1170 drivers/edac/i7core_edac.c 	pvt->addrmatch_dev->parent = &mci->dev;
mci              1172 drivers/edac/i7core_edac.c 	dev_set_drvdata(pvt->addrmatch_dev, mci);
mci              1189 drivers/edac/i7core_edac.c 		pvt->chancounts_dev->bus = mci->dev.bus;
mci              1191 drivers/edac/i7core_edac.c 		pvt->chancounts_dev->parent = &mci->dev;
mci              1193 drivers/edac/i7core_edac.c 		dev_set_drvdata(pvt->chancounts_dev, mci);
mci              1213 drivers/edac/i7core_edac.c static void i7core_delete_sysfs_devices(struct mem_ctl_info *mci)
mci              1215 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              1453 drivers/edac/i7core_edac.c static int mci_bind_devs(struct mem_ctl_info *mci,
mci              1456 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              1533 drivers/edac/i7core_edac.c static void i7core_rdimm_update_ce_count(struct mem_ctl_info *mci,
mci              1539 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              1570 drivers/edac/i7core_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, add0,
mci              1574 drivers/edac/i7core_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, add1,
mci              1578 drivers/edac/i7core_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, add2,
mci              1583 drivers/edac/i7core_edac.c static void i7core_rdimm_check_mc_ecc_err(struct mem_ctl_info *mci)
mci              1585 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              1618 drivers/edac/i7core_edac.c 		i7core_rdimm_update_ce_count(mci, i, new0, new1, new2);
mci              1628 drivers/edac/i7core_edac.c static void i7core_udimm_check_mc_ecc_err(struct mem_ctl_info *mci)
mci              1630 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              1695 drivers/edac/i7core_edac.c static void i7core_mce_output_error(struct mem_ctl_info *mci,
mci              1698 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              1780 drivers/edac/i7core_edac.c 		edac_mc_handle_error(tp_event, mci, core_err_cnt,
mci              1792 drivers/edac/i7core_edac.c static void i7core_check_error(struct mem_ctl_info *mci, struct mce *m)
mci              1794 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              1796 drivers/edac/i7core_edac.c 	i7core_mce_output_error(mci, m);
mci              1802 drivers/edac/i7core_edac.c 		i7core_udimm_check_mc_ecc_err(mci);
mci              1804 drivers/edac/i7core_edac.c 		i7core_rdimm_check_mc_ecc_err(mci);
mci              1816 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci;
mci              1822 drivers/edac/i7core_edac.c 	mci = i7_dev->mci;
mci              1835 drivers/edac/i7core_edac.c 	i7core_check_error(mci, mce);
mci              1957 drivers/edac/i7core_edac.c static int set_sdram_scrub_rate(struct mem_ctl_info *mci, u32 new_bw)
mci              1959 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              2019 drivers/edac/i7core_edac.c static int get_sdram_scrub_rate(struct mem_ctl_info *mci)
mci              2021 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              2048 drivers/edac/i7core_edac.c static void enable_sdram_scrub_setting(struct mem_ctl_info *mci)
mci              2050 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              2059 drivers/edac/i7core_edac.c 	mci->set_sdram_scrub_rate = set_sdram_scrub_rate;
mci              2060 drivers/edac/i7core_edac.c 	mci->get_sdram_scrub_rate = get_sdram_scrub_rate;
mci              2063 drivers/edac/i7core_edac.c static void disable_sdram_scrub_setting(struct mem_ctl_info *mci)
mci              2065 drivers/edac/i7core_edac.c 	struct i7core_pvt *pvt = mci->pvt_info;
mci              2098 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci = i7core_dev->mci;
mci              2101 drivers/edac/i7core_edac.c 	if (unlikely(!mci || !mci->pvt_info)) {
mci              2108 drivers/edac/i7core_edac.c 	pvt = mci->pvt_info;
mci              2110 drivers/edac/i7core_edac.c 	edac_dbg(0, "MC: mci = %p, dev = %p\n", mci, &i7core_dev->pdev[0]->dev);
mci              2114 drivers/edac/i7core_edac.c 		disable_sdram_scrub_setting(mci);
mci              2120 drivers/edac/i7core_edac.c 	i7core_delete_sysfs_devices(mci);
mci              2121 drivers/edac/i7core_edac.c 	edac_mc_del_mc(mci->pdev);
mci              2123 drivers/edac/i7core_edac.c 	edac_dbg(1, "%s: free mci struct\n", mci->ctl_name);
mci              2124 drivers/edac/i7core_edac.c 	kfree(mci->ctl_name);
mci              2125 drivers/edac/i7core_edac.c 	edac_mc_free(mci);
mci              2126 drivers/edac/i7core_edac.c 	i7core_dev->mci = NULL;
mci              2131 drivers/edac/i7core_edac.c 	struct mem_ctl_info *mci;
mci              2144 drivers/edac/i7core_edac.c 	mci = edac_mc_alloc(i7core_dev->socket, ARRAY_SIZE(layers), layers,
mci              2146 drivers/edac/i7core_edac.c 	if (unlikely(!mci))
mci              2149 drivers/edac/i7core_edac.c 	edac_dbg(0, "MC: mci = %p, dev = %p\n", mci, &i7core_dev->pdev[0]->dev);
mci              2151 drivers/edac/i7core_edac.c 	pvt = mci->pvt_info;
mci              2156 drivers/edac/i7core_edac.c 	i7core_dev->mci = mci;
mci              2163 drivers/edac/i7core_edac.c 	mci->mtype_cap = MEM_FLAG_DDR3;
mci              2164 drivers/edac/i7core_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE;
mci              2165 drivers/edac/i7core_edac.c 	mci->edac_cap = EDAC_FLAG_NONE;
mci              2166 drivers/edac/i7core_edac.c 	mci->mod_name = "i7core_edac.c";
mci              2168 drivers/edac/i7core_edac.c 	mci->ctl_name = kasprintf(GFP_KERNEL, "i7 core #%d", i7core_dev->socket);
mci              2169 drivers/edac/i7core_edac.c 	if (!mci->ctl_name) {
mci              2174 drivers/edac/i7core_edac.c 	mci->dev_name = pci_name(i7core_dev->pdev[0]);
mci              2175 drivers/edac/i7core_edac.c 	mci->ctl_page_to_phys = NULL;
mci              2178 drivers/edac/i7core_edac.c 	rc = mci_bind_devs(mci, i7core_dev);
mci              2184 drivers/edac/i7core_edac.c 	get_dimm_config(mci);
mci              2186 drivers/edac/i7core_edac.c 	mci->pdev = &i7core_dev->pdev[0]->dev;
mci              2190 drivers/edac/i7core_edac.c 		enable_sdram_scrub_setting(mci);
mci              2193 drivers/edac/i7core_edac.c 	if (unlikely(edac_mc_add_mc_with_groups(mci, i7core_dev_groups))) {
mci              2202 drivers/edac/i7core_edac.c 	if (i7core_create_sysfs_devices(mci)) {
mci              2204 drivers/edac/i7core_edac.c 		edac_mc_del_mc(mci->pdev);
mci              2226 drivers/edac/i7core_edac.c 	kfree(mci->ctl_name);
mci              2229 drivers/edac/i7core_edac.c 	edac_mc_free(mci);
mci              2230 drivers/edac/i7core_edac.c 	i7core_dev->mci = NULL;
mci               120 drivers/edac/i82443bxgx_edac.c static void i82443bxgx_edacmc_get_error_info(struct mem_ctl_info *mci,
mci               125 drivers/edac/i82443bxgx_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               140 drivers/edac/i82443bxgx_edac.c static int i82443bxgx_edacmc_process_error_info(struct mem_ctl_info *mci,
mci               157 drivers/edac/i82443bxgx_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               159 drivers/edac/i82443bxgx_edac.c 					     edac_mc_find_csrow_by_page(mci, page),
mci               160 drivers/edac/i82443bxgx_edac.c 					     0, -1, mci->ctl_name, "");
mci               166 drivers/edac/i82443bxgx_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               168 drivers/edac/i82443bxgx_edac.c 					     edac_mc_find_csrow_by_page(mci, page),
mci               169 drivers/edac/i82443bxgx_edac.c 					     0, -1, mci->ctl_name, "");
mci               175 drivers/edac/i82443bxgx_edac.c static void i82443bxgx_edacmc_check(struct mem_ctl_info *mci)
mci               179 drivers/edac/i82443bxgx_edac.c 	edac_dbg(1, "MC%d\n", mci->mc_idx);
mci               180 drivers/edac/i82443bxgx_edac.c 	i82443bxgx_edacmc_get_error_info(mci, &info);
mci               181 drivers/edac/i82443bxgx_edac.c 	i82443bxgx_edacmc_process_error_info(mci, &info, 1);
mci               184 drivers/edac/i82443bxgx_edac.c static void i82443bxgx_init_csrows(struct mem_ctl_info *mci,
mci               197 drivers/edac/i82443bxgx_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               198 drivers/edac/i82443bxgx_edac.c 		csrow = mci->csrows[index];
mci               203 drivers/edac/i82443bxgx_edac.c 			 mci->mc_idx, index, drbar);
mci               207 drivers/edac/i82443bxgx_edac.c 			 mci->mc_idx, index, row_high_limit,
mci               234 drivers/edac/i82443bxgx_edac.c 	struct mem_ctl_info *mci;
mci               255 drivers/edac/i82443bxgx_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, 0);
mci               256 drivers/edac/i82443bxgx_edac.c 	if (mci == NULL)
mci               259 drivers/edac/i82443bxgx_edac.c 	edac_dbg(0, "MC: mci = %p\n", mci);
mci               260 drivers/edac/i82443bxgx_edac.c 	mci->pdev = &pdev->dev;
mci               261 drivers/edac/i82443bxgx_edac.c 	mci->mtype_cap = MEM_FLAG_EDO | MEM_FLAG_SDR | MEM_FLAG_RDR;
mci               262 drivers/edac/i82443bxgx_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED;
mci               280 drivers/edac/i82443bxgx_edac.c 		mci->edac_cap = mci->edac_ctl_cap;
mci               282 drivers/edac/i82443bxgx_edac.c 		mci->edac_cap = EDAC_FLAG_NONE;
mci               284 drivers/edac/i82443bxgx_edac.c 	mci->scrub_cap = SCRUB_FLAG_HW_SRC;
mci               289 drivers/edac/i82443bxgx_edac.c 	mci->scrub_mode = (ecc_mode == I82443BXGX_NBXCFG_INTEGRITY_SCRUB)
mci               309 drivers/edac/i82443bxgx_edac.c 	i82443bxgx_init_csrows(mci, pdev, edac_mode, mtype);
mci               320 drivers/edac/i82443bxgx_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               321 drivers/edac/i82443bxgx_edac.c 	mci->ctl_name = "I82443BXGX";
mci               322 drivers/edac/i82443bxgx_edac.c 	mci->dev_name = pci_name(pdev);
mci               323 drivers/edac/i82443bxgx_edac.c 	mci->edac_check = i82443bxgx_edacmc_check;
mci               324 drivers/edac/i82443bxgx_edac.c 	mci->ctl_page_to_phys = NULL;
mci               326 drivers/edac/i82443bxgx_edac.c 	if (edac_mc_add_mc(mci)) {
mci               346 drivers/edac/i82443bxgx_edac.c 	edac_mc_free(mci);
mci               369 drivers/edac/i82443bxgx_edac.c 	struct mem_ctl_info *mci;
mci               376 drivers/edac/i82443bxgx_edac.c 	if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL)
mci               379 drivers/edac/i82443bxgx_edac.c 	edac_mc_free(mci);
mci                24 drivers/edac/i82860_edac.c #define i82860_mc_printk(mci, level, fmt, arg...) \
mci                25 drivers/edac/i82860_edac.c 	edac_mc_chipset_printk(mci, level, "i82860", fmt, ##arg)
mci                64 drivers/edac/i82860_edac.c static void i82860_get_error_info(struct mem_ctl_info *mci,
mci                69 drivers/edac/i82860_edac.c 	pdev = to_pci_dev(mci->pdev);
mci                97 drivers/edac/i82860_edac.c static int i82860_process_error_info(struct mem_ctl_info *mci,
mci               111 drivers/edac/i82860_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               117 drivers/edac/i82860_edac.c 	row = edac_mc_find_csrow_by_page(mci, info->eap);
mci               118 drivers/edac/i82860_edac.c 	dimm = mci->csrows[row]->channels[0]->dimm;
mci               121 drivers/edac/i82860_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               126 drivers/edac/i82860_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               134 drivers/edac/i82860_edac.c static void i82860_check(struct mem_ctl_info *mci)
mci               138 drivers/edac/i82860_edac.c 	edac_dbg(1, "MC%d\n", mci->mc_idx);
mci               139 drivers/edac/i82860_edac.c 	i82860_get_error_info(mci, &info);
mci               140 drivers/edac/i82860_edac.c 	i82860_process_error_info(mci, &info, 1);
mci               143 drivers/edac/i82860_edac.c static void i82860_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev)
mci               162 drivers/edac/i82860_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               163 drivers/edac/i82860_edac.c 		csrow = mci->csrows[index];
mci               187 drivers/edac/i82860_edac.c 	struct mem_ctl_info *mci;
mci               207 drivers/edac/i82860_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, 0);
mci               208 drivers/edac/i82860_edac.c 	if (!mci)
mci               212 drivers/edac/i82860_edac.c 	mci->pdev = &pdev->dev;
mci               213 drivers/edac/i82860_edac.c 	mci->mtype_cap = MEM_FLAG_DDR;
mci               214 drivers/edac/i82860_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               216 drivers/edac/i82860_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               217 drivers/edac/i82860_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               218 drivers/edac/i82860_edac.c 	mci->ctl_name = i82860_devs[dev_idx].ctl_name;
mci               219 drivers/edac/i82860_edac.c 	mci->dev_name = pci_name(pdev);
mci               220 drivers/edac/i82860_edac.c 	mci->edac_check = i82860_check;
mci               221 drivers/edac/i82860_edac.c 	mci->ctl_page_to_phys = NULL;
mci               222 drivers/edac/i82860_edac.c 	i82860_init_csrows(mci, pdev);
mci               223 drivers/edac/i82860_edac.c 	i82860_get_error_info(mci, &discard);	/* clear counters */
mci               228 drivers/edac/i82860_edac.c 	if (edac_mc_add_mc(mci)) {
mci               250 drivers/edac/i82860_edac.c 	edac_mc_free(mci);
mci               276 drivers/edac/i82860_edac.c 	struct mem_ctl_info *mci;
mci               283 drivers/edac/i82860_edac.c 	if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL)
mci               286 drivers/edac/i82860_edac.c 	edac_mc_free(mci);
mci                28 drivers/edac/i82875p_edac.c #define i82875p_mc_printk(mci, level, fmt, arg...) \
mci                29 drivers/edac/i82875p_edac.c 	edac_mc_chipset_printk(mci, level, "i82875p", fmt, ##arg)
mci               186 drivers/edac/i82875p_edac.c static void i82875p_get_error_info(struct mem_ctl_info *mci,
mci               191 drivers/edac/i82875p_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               223 drivers/edac/i82875p_edac.c static int i82875p_process_error_info(struct mem_ctl_info *mci,
mci               229 drivers/edac/i82875p_edac.c 	multi_chan = mci->csrows[0]->nr_channels - 1;
mci               238 drivers/edac/i82875p_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               245 drivers/edac/i82875p_edac.c 	row = edac_mc_find_csrow_by_page(mci, info->eap);
mci               248 drivers/edac/i82875p_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               253 drivers/edac/i82875p_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               261 drivers/edac/i82875p_edac.c static void i82875p_check(struct mem_ctl_info *mci)
mci               265 drivers/edac/i82875p_edac.c 	edac_dbg(1, "MC%d\n", mci->mc_idx);
mci               266 drivers/edac/i82875p_edac.c 	i82875p_get_error_info(mci, &info);
mci               267 drivers/edac/i82875p_edac.c 	i82875p_process_error_info(mci, &info, 1);
mci               340 drivers/edac/i82875p_edac.c static void i82875p_init_csrows(struct mem_ctl_info *mci,
mci               362 drivers/edac/i82875p_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               363 drivers/edac/i82875p_edac.c 		csrow = mci->csrows[index];
mci               391 drivers/edac/i82875p_edac.c 	struct mem_ctl_info *mci;
mci               413 drivers/edac/i82875p_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt));
mci               414 drivers/edac/i82875p_edac.c 	if (!mci) {
mci               420 drivers/edac/i82875p_edac.c 	mci->pdev = &pdev->dev;
mci               421 drivers/edac/i82875p_edac.c 	mci->mtype_cap = MEM_FLAG_DDR;
mci               422 drivers/edac/i82875p_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               423 drivers/edac/i82875p_edac.c 	mci->edac_cap = EDAC_FLAG_UNKNOWN;
mci               424 drivers/edac/i82875p_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               425 drivers/edac/i82875p_edac.c 	mci->ctl_name = i82875p_devs[dev_idx].ctl_name;
mci               426 drivers/edac/i82875p_edac.c 	mci->dev_name = pci_name(pdev);
mci               427 drivers/edac/i82875p_edac.c 	mci->edac_check = i82875p_check;
mci               428 drivers/edac/i82875p_edac.c 	mci->ctl_page_to_phys = NULL;
mci               430 drivers/edac/i82875p_edac.c 	pvt = (struct i82875p_pvt *)mci->pvt_info;
mci               433 drivers/edac/i82875p_edac.c 	i82875p_init_csrows(mci, pdev, ovrfl_window, drc);
mci               434 drivers/edac/i82875p_edac.c 	i82875p_get_error_info(mci, &discard);	/* clear counters */
mci               439 drivers/edac/i82875p_edac.c 	if (edac_mc_add_mc(mci)) {
mci               460 drivers/edac/i82875p_edac.c 	edac_mc_free(mci);
mci               493 drivers/edac/i82875p_edac.c 	struct mem_ctl_info *mci;
mci               501 drivers/edac/i82875p_edac.c 	if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL)
mci               504 drivers/edac/i82875p_edac.c 	pvt = (struct i82875p_pvt *)mci->pvt_info;
mci               517 drivers/edac/i82875p_edac.c 	edac_mc_free(mci);
mci                24 drivers/edac/i82975x_edac.c #define i82975x_mc_printk(mci, level, fmt, arg...) \
mci                25 drivers/edac/i82975x_edac.c 	edac_mc_chipset_printk(mci, level, "i82975x", fmt, ##arg)
mci               238 drivers/edac/i82975x_edac.c static void i82975x_get_error_info(struct mem_ctl_info *mci,
mci               243 drivers/edac/i82975x_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               277 drivers/edac/i82975x_edac.c static int i82975x_process_error_info(struct mem_ctl_info *mci,
mci               290 drivers/edac/i82975x_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               300 drivers/edac/i82975x_edac.c 	row = edac_mc_find_csrow_by_page(mci, page);
mci               303 drivers/edac/i82975x_edac.c 		i82975x_mc_printk(mci, KERN_ERR, "error processing EAP:\n"
mci               310 drivers/edac/i82975x_edac.c 	chan = (mci->csrows[row]->nr_channels == 1) ? 0 : info->eap & 1;
mci               313 drivers/edac/i82975x_edac.c 			   (1 << mci->csrows[row]->channels[chan]->dimm->grain));
mci               316 drivers/edac/i82975x_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               321 drivers/edac/i82975x_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               329 drivers/edac/i82975x_edac.c static void i82975x_check(struct mem_ctl_info *mci)
mci               333 drivers/edac/i82975x_edac.c 	edac_dbg(1, "MC%d\n", mci->mc_idx);
mci               334 drivers/edac/i82975x_edac.c 	i82975x_get_error_info(mci, &info);
mci               335 drivers/edac/i82975x_edac.c 	i82975x_process_error_info(mci, &info, 1);
mci               361 drivers/edac/i82975x_edac.c static void i82975x_init_csrows(struct mem_ctl_info *mci,
mci               382 drivers/edac/i82975x_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               383 drivers/edac/i82975x_edac.c 		csrow = mci->csrows[index];
mci               408 drivers/edac/i82975x_edac.c 			dimm = mci->csrows[index]->channels[chan]->dimm;
mci               467 drivers/edac/i82975x_edac.c 	struct mem_ctl_info *mci;
mci               547 drivers/edac/i82975x_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt));
mci               548 drivers/edac/i82975x_edac.c 	if (!mci) {
mci               554 drivers/edac/i82975x_edac.c 	mci->pdev = &pdev->dev;
mci               555 drivers/edac/i82975x_edac.c 	mci->mtype_cap = MEM_FLAG_DDR2;
mci               556 drivers/edac/i82975x_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               557 drivers/edac/i82975x_edac.c 	mci->edac_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               558 drivers/edac/i82975x_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               559 drivers/edac/i82975x_edac.c 	mci->ctl_name = i82975x_devs[dev_idx].ctl_name;
mci               560 drivers/edac/i82975x_edac.c 	mci->dev_name = pci_name(pdev);
mci               561 drivers/edac/i82975x_edac.c 	mci->edac_check = i82975x_check;
mci               562 drivers/edac/i82975x_edac.c 	mci->ctl_page_to_phys = NULL;
mci               564 drivers/edac/i82975x_edac.c 	pvt = (struct i82975x_pvt *) mci->pvt_info;
mci               566 drivers/edac/i82975x_edac.c 	i82975x_init_csrows(mci, pdev, mch_window);
mci               567 drivers/edac/i82975x_edac.c 	mci->scrub_mode = SCRUB_HW_SRC;
mci               568 drivers/edac/i82975x_edac.c 	i82975x_get_error_info(mci, &discard);  /* clear counters */
mci               571 drivers/edac/i82975x_edac.c 	if (edac_mc_add_mc(mci)) {
mci               581 drivers/edac/i82975x_edac.c 	edac_mc_free(mci);
mci               610 drivers/edac/i82975x_edac.c 	struct mem_ctl_info *mci;
mci               615 drivers/edac/i82975x_edac.c 	mci = edac_mc_del_mc(&pdev->dev);
mci               616 drivers/edac/i82975x_edac.c 	if (mci  == NULL)
mci               619 drivers/edac/i82975x_edac.c 	pvt = mci->pvt_info;
mci               623 drivers/edac/i82975x_edac.c 	edac_mc_free(mci);
mci               247 drivers/edac/ie31200_edac.c static void ie31200_clear_error_info(struct mem_ctl_info *mci)
mci               253 drivers/edac/ie31200_edac.c 	pci_write_bits16(to_pci_dev(mci->pdev), IE31200_ERRSTS,
mci               257 drivers/edac/ie31200_edac.c static void ie31200_get_and_clear_error_info(struct mem_ctl_info *mci,
mci               261 drivers/edac/ie31200_edac.c 	struct ie31200_priv *priv = mci->pvt_info;
mci               263 drivers/edac/ie31200_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               293 drivers/edac/ie31200_edac.c 	ie31200_clear_error_info(mci);
mci               296 drivers/edac/ie31200_edac.c static void ie31200_process_error_info(struct mem_ctl_info *mci,
mci               306 drivers/edac/ie31200_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               314 drivers/edac/ie31200_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               320 drivers/edac/ie31200_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               330 drivers/edac/ie31200_edac.c static void ie31200_check(struct mem_ctl_info *mci)
mci               334 drivers/edac/ie31200_edac.c 	edac_dbg(1, "MC%d\n", mci->mc_idx);
mci               335 drivers/edac/ie31200_edac.c 	ie31200_get_and_clear_error_info(mci, &info);
mci               336 drivers/edac/ie31200_edac.c 	ie31200_process_error_info(mci, &info);
mci               398 drivers/edac/ie31200_edac.c 	struct mem_ctl_info *mci = NULL;
mci               425 drivers/edac/ie31200_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers,
mci               427 drivers/edac/ie31200_edac.c 	if (!mci)
mci               437 drivers/edac/ie31200_edac.c 	mci->pdev = &pdev->dev;
mci               439 drivers/edac/ie31200_edac.c 		mci->mtype_cap = MEM_FLAG_DDR4;
mci               441 drivers/edac/ie31200_edac.c 		mci->mtype_cap = MEM_FLAG_DDR3;
mci               442 drivers/edac/ie31200_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_SECDED;
mci               443 drivers/edac/ie31200_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               444 drivers/edac/ie31200_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               445 drivers/edac/ie31200_edac.c 	mci->ctl_name = ie31200_devs[dev_idx].ctl_name;
mci               446 drivers/edac/ie31200_edac.c 	mci->dev_name = pci_name(pdev);
mci               447 drivers/edac/ie31200_edac.c 	mci->edac_check = ie31200_check;
mci               448 drivers/edac/ie31200_edac.c 	mci->ctl_page_to_phys = NULL;
mci               449 drivers/edac/ie31200_edac.c 	priv = mci->pvt_info;
mci               493 drivers/edac/ie31200_edac.c 				dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms,
mci               494 drivers/edac/ie31200_edac.c 						     mci->n_layers, (i * 2) + 1,
mci               506 drivers/edac/ie31200_edac.c 			dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms,
mci               507 drivers/edac/ie31200_edac.c 					     mci->n_layers, i * 2, j, 0);
mci               520 drivers/edac/ie31200_edac.c 	ie31200_clear_error_info(mci);
mci               522 drivers/edac/ie31200_edac.c 	if (edac_mc_add_mc(mci)) {
mci               536 drivers/edac/ie31200_edac.c 	edac_mc_free(mci);
mci               554 drivers/edac/ie31200_edac.c 	struct mem_ctl_info *mci;
mci               558 drivers/edac/ie31200_edac.c 	mci = edac_mc_del_mc(&pdev->dev);
mci               559 drivers/edac/ie31200_edac.c 	if (!mci)
mci               561 drivers/edac/ie31200_edac.c 	priv = mci->pvt_info;
mci               563 drivers/edac/ie31200_edac.c 	edac_mc_free(mci);
mci               590 drivers/edac/mv64x60_edac.c static void mv64x60_mc_check(struct mem_ctl_info *mci)
mci               592 drivers/edac/mv64x60_edac.c 	struct mv64x60_mc_pdata *pdata = mci->pvt_info;
mci               610 drivers/edac/mv64x60_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               614 drivers/edac/mv64x60_edac.c 				     mci->ctl_name, "");
mci               616 drivers/edac/mv64x60_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               620 drivers/edac/mv64x60_edac.c 				     mci->ctl_name, "");
mci               628 drivers/edac/mv64x60_edac.c 	struct mem_ctl_info *mci = dev_id;
mci               629 drivers/edac/mv64x60_edac.c 	struct mv64x60_mc_pdata *pdata = mci->pvt_info;
mci               637 drivers/edac/mv64x60_edac.c 	mv64x60_mc_check(mci);
mci               656 drivers/edac/mv64x60_edac.c static void mv64x60_init_csrows(struct mem_ctl_info *mci,
mci               669 drivers/edac/mv64x60_edac.c 	csrow = mci->csrows[0];
mci               698 drivers/edac/mv64x60_edac.c 	struct mem_ctl_info *mci;
mci               714 drivers/edac/mv64x60_edac.c 	mci = edac_mc_alloc(edac_mc_idx, ARRAY_SIZE(layers), layers,
mci               716 drivers/edac/mv64x60_edac.c 	if (!mci) {
mci               722 drivers/edac/mv64x60_edac.c 	pdata = mci->pvt_info;
mci               723 drivers/edac/mv64x60_edac.c 	mci->pdev = &pdev->dev;
mci               724 drivers/edac/mv64x60_edac.c 	platform_set_drvdata(pdev, mci);
mci               726 drivers/edac/mv64x60_edac.c 	mci->dev_name = dev_name(&pdev->dev);
mci               765 drivers/edac/mv64x60_edac.c 	mci->mtype_cap = MEM_FLAG_RDDR | MEM_FLAG_DDR;
mci               766 drivers/edac/mv64x60_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               767 drivers/edac/mv64x60_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               768 drivers/edac/mv64x60_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               769 drivers/edac/mv64x60_edac.c 	mci->ctl_name = mv64x60_ctl_name;
mci               772 drivers/edac/mv64x60_edac.c 		mci->edac_check = mv64x60_mc_check;
mci               774 drivers/edac/mv64x60_edac.c 	mci->ctl_page_to_phys = NULL;
mci               776 drivers/edac/mv64x60_edac.c 	mci->scrub_mode = SCRUB_SW_SRC;
mci               778 drivers/edac/mv64x60_edac.c 	mv64x60_init_csrows(mci, pdata);
mci               786 drivers/edac/mv64x60_edac.c 	res = edac_mc_add_mc(mci);
mci               800 drivers/edac/mv64x60_edac.c 				       mci);
mci               821 drivers/edac/mv64x60_edac.c 	edac_mc_free(mci);
mci               827 drivers/edac/mv64x60_edac.c 	struct mem_ctl_info *mci = platform_get_drvdata(pdev);
mci               832 drivers/edac/mv64x60_edac.c 	edac_mc_free(mci);
mci                21 drivers/edac/mv64x60_edac.h #define mv64x60_mc_printk(mci, level, fmt, arg...) \
mci                22 drivers/edac/mv64x60_edac.h 	edac_mc_chipset_printk(mci, level, "MV64x60", fmt, ##arg)
mci                38 drivers/edac/octeon_edac-lmc.c static void octeon_lmc_edac_poll(struct mem_ctl_info *mci)
mci                44 drivers/edac/octeon_edac-lmc.c 	cfg0.u64 = cvmx_read_csr(CVMX_LMCX_MEM_CFG0(mci->mc_idx));
mci                47 drivers/edac/octeon_edac-lmc.c 		fadr.u64 = cvmx_read_csr(CVMX_LMCX_FADR(mci->mc_idx));
mci                55 drivers/edac/octeon_edac-lmc.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, 0, 0, 0,
mci                62 drivers/edac/octeon_edac-lmc.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci                68 drivers/edac/octeon_edac-lmc.c 		cvmx_write_csr(CVMX_LMCX_MEM_CFG0(mci->mc_idx), cfg0.u64);
mci                71 drivers/edac/octeon_edac-lmc.c static void octeon_lmc_edac_poll_o2(struct mem_ctl_info *mci)
mci                73 drivers/edac/octeon_edac-lmc.c 	struct octeon_lmc_pvt *pvt = mci->pvt_info;
mci                79 drivers/edac/octeon_edac-lmc.c 		int_reg.u64 = cvmx_read_csr(CVMX_LMCX_INT(mci->mc_idx));
mci                91 drivers/edac/octeon_edac-lmc.c 			fadr.u64 = cvmx_read_csr(CVMX_LMCX_FADR(mci->mc_idx));
mci               106 drivers/edac/octeon_edac-lmc.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, 0, 0, 0,
mci               113 drivers/edac/octeon_edac-lmc.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               121 drivers/edac/octeon_edac-lmc.c 			cvmx_write_csr(CVMX_LMCX_INT(mci->mc_idx), int_reg.u64);
mci               135 drivers/edac/octeon_edac-lmc.c 	struct mem_ctl_info *mci = to_mci(dev);				\
mci               136 drivers/edac/octeon_edac-lmc.c 	struct octeon_lmc_pvt *pvt = mci->pvt_info;			\
mci               145 drivers/edac/octeon_edac-lmc.c 	struct mem_ctl_info *mci = to_mci(dev);				\
mci               146 drivers/edac/octeon_edac-lmc.c 	struct octeon_lmc_pvt *pvt = mci->pvt_info;			\
mci               172 drivers/edac/octeon_edac-lmc.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               173 drivers/edac/octeon_edac-lmc.c 	struct octeon_lmc_pvt *pvt = mci->pvt_info;
mci               187 drivers/edac/octeon_edac-lmc.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               188 drivers/edac/octeon_edac-lmc.c 	struct octeon_lmc_pvt *pvt = mci->pvt_info;
mci               227 drivers/edac/octeon_edac-lmc.c 	struct mem_ctl_info *mci;
mci               246 drivers/edac/octeon_edac-lmc.c 		mci = edac_mc_alloc(mc, ARRAY_SIZE(layers), layers, sizeof(struct octeon_lmc_pvt));
mci               247 drivers/edac/octeon_edac-lmc.c 		if (!mci)
mci               250 drivers/edac/octeon_edac-lmc.c 		mci->pdev = &pdev->dev;
mci               251 drivers/edac/octeon_edac-lmc.c 		mci->dev_name = dev_name(&pdev->dev);
mci               253 drivers/edac/octeon_edac-lmc.c 		mci->mod_name = "octeon-lmc";
mci               254 drivers/edac/octeon_edac-lmc.c 		mci->ctl_name = "octeon-lmc-err";
mci               255 drivers/edac/octeon_edac-lmc.c 		mci->edac_check = octeon_lmc_edac_poll;
mci               257 drivers/edac/octeon_edac-lmc.c 		if (edac_mc_add_mc_with_groups(mci, octeon_dev_groups)) {
mci               259 drivers/edac/octeon_edac-lmc.c 			edac_mc_free(mci);
mci               278 drivers/edac/octeon_edac-lmc.c 		mci = edac_mc_alloc(mc, ARRAY_SIZE(layers), layers, sizeof(struct octeon_lmc_pvt));
mci               279 drivers/edac/octeon_edac-lmc.c 		if (!mci)
mci               282 drivers/edac/octeon_edac-lmc.c 		mci->pdev = &pdev->dev;
mci               283 drivers/edac/octeon_edac-lmc.c 		mci->dev_name = dev_name(&pdev->dev);
mci               285 drivers/edac/octeon_edac-lmc.c 		mci->mod_name = "octeon-lmc";
mci               286 drivers/edac/octeon_edac-lmc.c 		mci->ctl_name = "co_lmc_err";
mci               287 drivers/edac/octeon_edac-lmc.c 		mci->edac_check = octeon_lmc_edac_poll_o2;
mci               289 drivers/edac/octeon_edac-lmc.c 		if (edac_mc_add_mc_with_groups(mci, octeon_dev_groups)) {
mci               291 drivers/edac/octeon_edac-lmc.c 			edac_mc_free(mci);
mci               300 drivers/edac/octeon_edac-lmc.c 	platform_set_drvdata(pdev, mci);
mci               307 drivers/edac/octeon_edac-lmc.c 	struct mem_ctl_info *mci = platform_get_drvdata(pdev);
mci               310 drivers/edac/octeon_edac-lmc.c 	edac_mc_free(mci);
mci                63 drivers/edac/pasemi_edac.c static u32 pasemi_edac_get_error_info(struct mem_ctl_info *mci)
mci                65 drivers/edac/pasemi_edac.c 	struct pci_dev *pdev = to_pci_dev(mci->pdev);
mci                84 drivers/edac/pasemi_edac.c static void pasemi_edac_process_error_info(struct mem_ctl_info *mci, u32 errsta)
mci                86 drivers/edac/pasemi_edac.c 	struct pci_dev *pdev = to_pci_dev(mci->pdev);
mci               101 drivers/edac/pasemi_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               102 drivers/edac/pasemi_edac.c 				     mci->csrows[cs]->first_page, 0, 0,
mci               103 drivers/edac/pasemi_edac.c 				     cs, 0, -1, mci->ctl_name, "");
mci               108 drivers/edac/pasemi_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               109 drivers/edac/pasemi_edac.c 				     mci->csrows[cs]->first_page, 0, 0,
mci               110 drivers/edac/pasemi_edac.c 				     cs, 0, -1, mci->ctl_name, "");
mci               113 drivers/edac/pasemi_edac.c static void pasemi_edac_check(struct mem_ctl_info *mci)
mci               117 drivers/edac/pasemi_edac.c 	errsta = pasemi_edac_get_error_info(mci);
mci               119 drivers/edac/pasemi_edac.c 		pasemi_edac_process_error_info(mci, errsta);
mci               122 drivers/edac/pasemi_edac.c static int pasemi_edac_init_csrows(struct mem_ctl_info *mci,
mci               131 drivers/edac/pasemi_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               132 drivers/edac/pasemi_edac.c 		csrow = mci->csrows[index];
mci               161 drivers/edac/pasemi_edac.c 			edac_mc_printk(mci, KERN_ERR,
mci               182 drivers/edac/pasemi_edac.c 	struct mem_ctl_info *mci = NULL;
mci               206 drivers/edac/pasemi_edac.c 	mci = edac_mc_alloc(system_mmc_id++, ARRAY_SIZE(layers), layers,
mci               208 drivers/edac/pasemi_edac.c 	if (mci == NULL)
mci               216 drivers/edac/pasemi_edac.c 	mci->pdev = &pdev->dev;
mci               217 drivers/edac/pasemi_edac.c 	mci->mtype_cap = MEM_FLAG_DDR | MEM_FLAG_RDDR;
mci               218 drivers/edac/pasemi_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED;
mci               219 drivers/edac/pasemi_edac.c 	mci->edac_cap = (errcor & MCCFG_ERRCOR_ECC_GEN_EN) ?
mci               223 drivers/edac/pasemi_edac.c 	mci->mod_name = MODULE_NAME;
mci               224 drivers/edac/pasemi_edac.c 	mci->dev_name = pci_name(pdev);
mci               225 drivers/edac/pasemi_edac.c 	mci->ctl_name = "pasemi,pwrficient-mc";
mci               226 drivers/edac/pasemi_edac.c 	mci->edac_check = pasemi_edac_check;
mci               227 drivers/edac/pasemi_edac.c 	mci->ctl_page_to_phys = NULL;
mci               229 drivers/edac/pasemi_edac.c 	mci->scrub_cap = SCRUB_FLAG_HW_PROG | SCRUB_FLAG_HW_SRC;
mci               230 drivers/edac/pasemi_edac.c 	mci->scrub_mode =
mci               234 drivers/edac/pasemi_edac.c 	if (pasemi_edac_init_csrows(mci, pdev,
mci               235 drivers/edac/pasemi_edac.c 				    (mci->edac_cap & EDAC_FLAG_SECDED) ?
mci               237 drivers/edac/pasemi_edac.c 				    ((mci->edac_cap & EDAC_FLAG_EC) ?
mci               244 drivers/edac/pasemi_edac.c 	pasemi_edac_get_error_info(mci);
mci               246 drivers/edac/pasemi_edac.c 	if (edac_mc_add_mc(mci))
mci               253 drivers/edac/pasemi_edac.c 	edac_mc_free(mci);
mci               259 drivers/edac/pasemi_edac.c 	struct mem_ctl_info *mci = edac_mc_del_mc(&pdev->dev);
mci               261 drivers/edac/pasemi_edac.c 	if (!mci)
mci               264 drivers/edac/pasemi_edac.c 	edac_mc_free(mci);
mci                91 drivers/edac/pnd2_edac.c 	void (*get_dimm_config)(struct mem_ctl_info *mci);
mci                92 drivers/edac/pnd2_edac.c 	int (*pmi2mem)(struct mem_ctl_info *mci, u64 pmiaddr, u32 pmiidx,
mci               104 drivers/edac/pnd2_edac.c #define pnd2_mc_printk(mci, level, fmt, arg...)	\
mci               105 drivers/edac/pnd2_edac.c 	edac_mc_chipset_printk(mci, level, "pnd2", fmt, ##arg)
mci               926 drivers/edac/pnd2_edac.c static int apl_pmi2mem(struct mem_ctl_info *mci, u64 pmiaddr, u32 pmiidx,
mci               930 drivers/edac/pnd2_edac.c 	struct pnd2_pvt *pvt = mci->pvt_info;
mci               996 drivers/edac/pnd2_edac.c static int dnv_pmi2mem(struct mem_ctl_info *mci, u64 pmiaddr, u32 pmiidx,
mci              1117 drivers/edac/pnd2_edac.c static int get_memory_error_data(struct mem_ctl_info *mci, u64 addr,
mci              1133 drivers/edac/pnd2_edac.c 	ret = ops->pmi2mem(mci, pmiaddr, pmiidx, daddr, msg);
mci              1143 drivers/edac/pnd2_edac.c static void pnd2_mce_output_error(struct mem_ctl_info *mci, const struct mce *m,
mci              1201 drivers/edac/pnd2_edac.c 	rc = get_memory_error_data(mci, m->addr, daddr, msg);
mci              1213 drivers/edac/pnd2_edac.c 	edac_mc_handle_error(tp_event, mci, core_err_cnt, m->addr >> PAGE_SHIFT,
mci              1219 drivers/edac/pnd2_edac.c 	edac_mc_handle_error(tp_event, mci, core_err_cnt, 0, 0, 0, -1, -1, -1, msg, "");
mci              1222 drivers/edac/pnd2_edac.c static void apl_get_dimm_config(struct mem_ctl_info *mci)
mci              1224 drivers/edac/pnd2_edac.c 	struct pnd2_pvt	*pvt = mci->pvt_info;
mci              1234 drivers/edac/pnd2_edac.c 		dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers, i, 0, 0);
mci              1269 drivers/edac/pnd2_edac.c static void dnv_get_dimm_config(struct mem_ctl_info *mci)
mci              1314 drivers/edac/pnd2_edac.c 			dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers, i, j, 0);
mci              1335 drivers/edac/pnd2_edac.c 	struct mem_ctl_info *mci;
mci              1350 drivers/edac/pnd2_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt));
mci              1351 drivers/edac/pnd2_edac.c 	if (!mci)
mci              1354 drivers/edac/pnd2_edac.c 	pvt = mci->pvt_info;
mci              1357 drivers/edac/pnd2_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci              1358 drivers/edac/pnd2_edac.c 	mci->dev_name = ops->name;
mci              1359 drivers/edac/pnd2_edac.c 	mci->ctl_name = "Pondicherry2";
mci              1362 drivers/edac/pnd2_edac.c 	ops->get_dimm_config(mci);
mci              1364 drivers/edac/pnd2_edac.c 	if (edac_mc_add_mc(mci)) {
mci              1366 drivers/edac/pnd2_edac.c 		edac_mc_free(mci);
mci              1370 drivers/edac/pnd2_edac.c 	*ppmci = mci;
mci              1375 drivers/edac/pnd2_edac.c static void pnd2_unregister_mci(struct mem_ctl_info *mci)
mci              1377 drivers/edac/pnd2_edac.c 	if (unlikely(!mci || !mci->pvt_info)) {
mci              1384 drivers/edac/pnd2_edac.c 	edac_dbg(1, "%s: free mci struct\n", mci->ctl_name);
mci              1385 drivers/edac/pnd2_edac.c 	edac_mc_free(mci);
mci              1395 drivers/edac/pnd2_edac.c 	struct mem_ctl_info *mci;
mci              1402 drivers/edac/pnd2_edac.c 	mci = pnd2_mci;
mci              1403 drivers/edac/pnd2_edac.c 	if (!mci)
mci              1420 drivers/edac/pnd2_edac.c 	pnd2_mc_printk(mci, KERN_INFO, "HANDLING MCE MEMORY ERROR\n");
mci              1421 drivers/edac/pnd2_edac.c 	pnd2_mc_printk(mci, KERN_INFO, "CPU %u: Machine Check %s: %llx Bank %u: %llx\n",
mci              1423 drivers/edac/pnd2_edac.c 	pnd2_mc_printk(mci, KERN_INFO, "TSC %llx ", mce->tsc);
mci              1424 drivers/edac/pnd2_edac.c 	pnd2_mc_printk(mci, KERN_INFO, "ADDR %llx ", mce->addr);
mci              1425 drivers/edac/pnd2_edac.c 	pnd2_mc_printk(mci, KERN_INFO, "MISC %llx ", mce->misc);
mci              1426 drivers/edac/pnd2_edac.c 	pnd2_mc_printk(mci, KERN_INFO, "PROCESSOR %u:%x TIME %llu SOCKET %u APIC %x\n",
mci              1429 drivers/edac/pnd2_edac.c 	pnd2_mce_output_error(mci, mce, &daddr);
mci               124 drivers/edac/ppc4xx_edac.c #define ppc4xx_edac_mc_printk(level, mci, fmt, arg...) \
mci               125 drivers/edac/ppc4xx_edac.c 	edac_mc_chipset_printk(mci, level, "PPC4xx", fmt, ##arg)
mci               311 drivers/edac/ppc4xx_edac.c ppc4xx_edac_generate_bank_message(const struct mem_ctl_info *mci,
mci               319 drivers/edac/ppc4xx_edac.c 	n = snprintf(buffer, size, "%s: Banks: ", mci->dev_name);
mci               328 drivers/edac/ppc4xx_edac.c 	for (rows = 0, row = 0; row < mci->nr_csrows; row++) {
mci               373 drivers/edac/ppc4xx_edac.c ppc4xx_edac_generate_checkbit_message(const struct mem_ctl_info *mci,
mci               378 drivers/edac/ppc4xx_edac.c 	const struct ppc4xx_edac_pdata *pdata = mci->pvt_info;
mci               431 drivers/edac/ppc4xx_edac.c ppc4xx_edac_generate_lane_message(const struct mem_ctl_info *mci,
mci               496 drivers/edac/ppc4xx_edac.c ppc4xx_edac_generate_ecc_message(const struct mem_ctl_info *mci,
mci               503 drivers/edac/ppc4xx_edac.c 	n = ppc4xx_edac_generate_bank_message(mci, status, buffer, size);
mci               512 drivers/edac/ppc4xx_edac.c 	n = ppc4xx_edac_generate_checkbit_message(mci, status, buffer, size);
mci               521 drivers/edac/ppc4xx_edac.c 	n = ppc4xx_edac_generate_lane_message(mci, status, buffer, size);
mci               552 drivers/edac/ppc4xx_edac.c ppc4xx_edac_generate_plb_message(const struct mem_ctl_info *mci,
mci               593 drivers/edac/ppc4xx_edac.c ppc4xx_edac_generate_message(const struct mem_ctl_info *mci,
mci               603 drivers/edac/ppc4xx_edac.c 	n = ppc4xx_edac_generate_ecc_message(mci, status, buffer, size);
mci               611 drivers/edac/ppc4xx_edac.c 	ppc4xx_edac_generate_plb_message(mci, status, buffer, size);
mci               626 drivers/edac/ppc4xx_edac.c ppc4xx_ecc_dump_status(const struct mem_ctl_info *mci,
mci               631 drivers/edac/ppc4xx_edac.c 	ppc4xx_edac_generate_message(mci, status, message, sizeof(message));
mci               633 drivers/edac/ppc4xx_edac.c 	ppc4xx_edac_mc_printk(KERN_INFO, mci,
mci               663 drivers/edac/ppc4xx_edac.c ppc4xx_ecc_get_status(const struct mem_ctl_info *mci,
mci               666 drivers/edac/ppc4xx_edac.c 	const struct ppc4xx_edac_pdata *pdata = mci->pvt_info;
mci               688 drivers/edac/ppc4xx_edac.c ppc4xx_ecc_clear_status(const struct mem_ctl_info *mci,
mci               691 drivers/edac/ppc4xx_edac.c 	const struct ppc4xx_edac_pdata *pdata = mci->pvt_info;
mci               715 drivers/edac/ppc4xx_edac.c ppc4xx_edac_handle_ce(struct mem_ctl_info *mci,
mci               721 drivers/edac/ppc4xx_edac.c 	ppc4xx_edac_generate_message(mci, status, message, sizeof(message));
mci               723 drivers/edac/ppc4xx_edac.c 	for (row = 0; row < mci->nr_csrows; row++)
mci               725 drivers/edac/ppc4xx_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               743 drivers/edac/ppc4xx_edac.c ppc4xx_edac_handle_ue(struct mem_ctl_info *mci,
mci               752 drivers/edac/ppc4xx_edac.c 	ppc4xx_edac_generate_message(mci, status, message, sizeof(message));
mci               754 drivers/edac/ppc4xx_edac.c 	for (row = 0; row < mci->nr_csrows; row++)
mci               756 drivers/edac/ppc4xx_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               773 drivers/edac/ppc4xx_edac.c ppc4xx_edac_check(struct mem_ctl_info *mci)
mci               780 drivers/edac/ppc4xx_edac.c 	ppc4xx_ecc_get_status(mci, &status);
mci               784 drivers/edac/ppc4xx_edac.c 		ppc4xx_ecc_dump_status(mci, &status);
mci               788 drivers/edac/ppc4xx_edac.c 		ppc4xx_edac_handle_ue(mci, &status);
mci               791 drivers/edac/ppc4xx_edac.c 		ppc4xx_edac_handle_ce(mci, &status);
mci               793 drivers/edac/ppc4xx_edac.c 	ppc4xx_ecc_clear_status(mci, &status);
mci               812 drivers/edac/ppc4xx_edac.c 	struct mem_ctl_info *mci = dev_id;
mci               814 drivers/edac/ppc4xx_edac.c 	ppc4xx_edac_check(mci);
mci               889 drivers/edac/ppc4xx_edac.c static int ppc4xx_edac_init_csrows(struct mem_ctl_info *mci, u32 mcopt1)
mci               891 drivers/edac/ppc4xx_edac.c 	const struct ppc4xx_edac_pdata *pdata = mci->pvt_info;
mci               906 drivers/edac/ppc4xx_edac.c 	if (mci->edac_cap & EDAC_FLAG_SECDED)
mci               908 drivers/edac/ppc4xx_edac.c 	else if (mci->edac_cap & EDAC_FLAG_EC)
mci               918 drivers/edac/ppc4xx_edac.c 	for (row = 0; row < mci->nr_csrows; row++) {
mci               919 drivers/edac/ppc4xx_edac.c 		struct csrow_info *csi = mci->csrows[row];
mci               951 drivers/edac/ppc4xx_edac.c 			ppc4xx_edac_mc_printk(KERN_ERR, mci,
mci              1006 drivers/edac/ppc4xx_edac.c static int ppc4xx_edac_mc_init(struct mem_ctl_info *mci,
mci              1020 drivers/edac/ppc4xx_edac.c 	mci->pdev		= &op->dev;
mci              1022 drivers/edac/ppc4xx_edac.c 	dev_set_drvdata(mci->pdev, mci);
mci              1024 drivers/edac/ppc4xx_edac.c 	pdata			= mci->pvt_info;
mci              1030 drivers/edac/ppc4xx_edac.c 	mci->mtype_cap		= (MEM_FLAG_DDR | MEM_FLAG_RDDR |
mci              1033 drivers/edac/ppc4xx_edac.c 	mci->edac_ctl_cap	= (EDAC_FLAG_NONE |
mci              1037 drivers/edac/ppc4xx_edac.c 	mci->scrub_cap		= SCRUB_NONE;
mci              1038 drivers/edac/ppc4xx_edac.c 	mci->scrub_mode		= SCRUB_NONE;
mci              1047 drivers/edac/ppc4xx_edac.c 		mci->edac_cap	= EDAC_FLAG_EC;
mci              1050 drivers/edac/ppc4xx_edac.c 		mci->edac_cap	= (EDAC_FLAG_EC | EDAC_FLAG_SECDED);
mci              1051 drivers/edac/ppc4xx_edac.c 		mci->scrub_mode	= SCRUB_SW_SRC;
mci              1054 drivers/edac/ppc4xx_edac.c 		mci->edac_cap	= EDAC_FLAG_NONE;
mci              1060 drivers/edac/ppc4xx_edac.c 	mci->mod_name		= PPC4XX_EDAC_MODULE_NAME;
mci              1061 drivers/edac/ppc4xx_edac.c 	mci->ctl_name		= ppc4xx_edac_match->compatible,
mci              1062 drivers/edac/ppc4xx_edac.c 	mci->dev_name		= np->full_name;
mci              1066 drivers/edac/ppc4xx_edac.c 	mci->edac_check		= ppc4xx_edac_check;
mci              1067 drivers/edac/ppc4xx_edac.c 	mci->ctl_page_to_phys	= NULL;
mci              1071 drivers/edac/ppc4xx_edac.c 	status = ppc4xx_edac_init_csrows(mci, mcopt1);
mci              1074 drivers/edac/ppc4xx_edac.c 		ppc4xx_edac_mc_printk(KERN_ERR, mci,
mci              1096 drivers/edac/ppc4xx_edac.c 				    struct mem_ctl_info *mci)
mci              1100 drivers/edac/ppc4xx_edac.c 	struct ppc4xx_edac_pdata *pdata = mci->pvt_info;
mci              1107 drivers/edac/ppc4xx_edac.c 		ppc4xx_edac_mc_printk(KERN_ERR, mci,
mci              1117 drivers/edac/ppc4xx_edac.c 			     mci);
mci              1120 drivers/edac/ppc4xx_edac.c 		ppc4xx_edac_mc_printk(KERN_ERR, mci,
mci              1131 drivers/edac/ppc4xx_edac.c 			     mci);
mci              1134 drivers/edac/ppc4xx_edac.c 		ppc4xx_edac_mc_printk(KERN_ERR, mci,
mci              1141 drivers/edac/ppc4xx_edac.c 	ppc4xx_edac_mc_printk(KERN_INFO, mci, "ECCDED irq is %d\n", ded_irq);
mci              1142 drivers/edac/ppc4xx_edac.c 	ppc4xx_edac_mc_printk(KERN_INFO, mci, "ECCSEC irq is %d\n", sec_irq);
mci              1150 drivers/edac/ppc4xx_edac.c 	free_irq(sec_irq, mci);
mci              1153 drivers/edac/ppc4xx_edac.c 	free_irq(ded_irq, mci);
mci              1228 drivers/edac/ppc4xx_edac.c 	struct mem_ctl_info *mci = NULL;
mci              1281 drivers/edac/ppc4xx_edac.c 	mci = edac_mc_alloc(ppc4xx_edac_instance, ARRAY_SIZE(layers), layers,
mci              1283 drivers/edac/ppc4xx_edac.c 	if (mci == NULL) {
mci              1291 drivers/edac/ppc4xx_edac.c 	status = ppc4xx_edac_mc_init(mci, op, &dcr_host, mcopt1);
mci              1294 drivers/edac/ppc4xx_edac.c 		ppc4xx_edac_mc_printk(KERN_ERR, mci,
mci              1305 drivers/edac/ppc4xx_edac.c 	if (edac_mc_add_mc(mci)) {
mci              1306 drivers/edac/ppc4xx_edac.c 		ppc4xx_edac_mc_printk(KERN_ERR, mci,
mci              1313 drivers/edac/ppc4xx_edac.c 		status = ppc4xx_edac_register_irq(op, mci);
mci              1324 drivers/edac/ppc4xx_edac.c 	edac_mc_del_mc(mci->pdev);
mci              1327 drivers/edac/ppc4xx_edac.c 	edac_mc_free(mci);
mci              1348 drivers/edac/ppc4xx_edac.c 	struct mem_ctl_info *mci = dev_get_drvdata(&op->dev);
mci              1349 drivers/edac/ppc4xx_edac.c 	struct ppc4xx_edac_pdata *pdata = mci->pvt_info;
mci              1352 drivers/edac/ppc4xx_edac.c 		free_irq(pdata->irqs.sec, mci);
mci              1353 drivers/edac/ppc4xx_edac.c 		free_irq(pdata->irqs.ded, mci);
mci              1358 drivers/edac/ppc4xx_edac.c 	edac_mc_del_mc(mci->pdev);
mci              1359 drivers/edac/ppc4xx_edac.c 	edac_mc_free(mci);
mci                30 drivers/edac/r82600_edac.c #define r82600_mc_printk(mci, level, fmt, arg...) \
mci                31 drivers/edac/r82600_edac.c 	edac_mc_chipset_printk(mci, level, "r82600", fmt, ##arg)
mci               137 drivers/edac/r82600_edac.c static void r82600_get_error_info(struct mem_ctl_info *mci,
mci               142 drivers/edac/r82600_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               158 drivers/edac/r82600_edac.c static int r82600_process_error_info(struct mem_ctl_info *mci,
mci               181 drivers/edac/r82600_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               183 drivers/edac/r82600_edac.c 					     edac_mc_find_csrow_by_page(mci, page),
mci               185 drivers/edac/r82600_edac.c 					     mci->ctl_name, "");
mci               193 drivers/edac/r82600_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               195 drivers/edac/r82600_edac.c 					     edac_mc_find_csrow_by_page(mci, page),
mci               197 drivers/edac/r82600_edac.c 					     mci->ctl_name, "");
mci               203 drivers/edac/r82600_edac.c static void r82600_check(struct mem_ctl_info *mci)
mci               207 drivers/edac/r82600_edac.c 	edac_dbg(1, "MC%d\n", mci->mc_idx);
mci               208 drivers/edac/r82600_edac.c 	r82600_get_error_info(mci, &info);
mci               209 drivers/edac/r82600_edac.c 	r82600_process_error_info(mci, &info, 1);
mci               217 drivers/edac/r82600_edac.c static void r82600_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev,
mci               231 drivers/edac/r82600_edac.c 	for (index = 0; index < mci->nr_csrows; index++) {
mci               232 drivers/edac/r82600_edac.c 		csrow = mci->csrows[index];
mci               271 drivers/edac/r82600_edac.c 	struct mem_ctl_info *mci;
mci               292 drivers/edac/r82600_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, 0);
mci               293 drivers/edac/r82600_edac.c 	if (mci == NULL)
mci               296 drivers/edac/r82600_edac.c 	edac_dbg(0, "mci = %p\n", mci);
mci               297 drivers/edac/r82600_edac.c 	mci->pdev = &pdev->dev;
mci               298 drivers/edac/r82600_edac.c 	mci->mtype_cap = MEM_FLAG_RDDR | MEM_FLAG_DDR;
mci               299 drivers/edac/r82600_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED;
mci               308 drivers/edac/r82600_edac.c 	mci->edac_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED;
mci               313 drivers/edac/r82600_edac.c 				 mci, eapr);
mci               315 drivers/edac/r82600_edac.c 		mci->edac_cap = EDAC_FLAG_NONE;
mci               317 drivers/edac/r82600_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               318 drivers/edac/r82600_edac.c 	mci->ctl_name = "R82600";
mci               319 drivers/edac/r82600_edac.c 	mci->dev_name = pci_name(pdev);
mci               320 drivers/edac/r82600_edac.c 	mci->edac_check = r82600_check;
mci               321 drivers/edac/r82600_edac.c 	mci->ctl_page_to_phys = NULL;
mci               322 drivers/edac/r82600_edac.c 	r82600_init_csrows(mci, pdev, dramcr);
mci               323 drivers/edac/r82600_edac.c 	r82600_get_error_info(mci, &discard);	/* clear counters */
mci               328 drivers/edac/r82600_edac.c 	if (edac_mc_add_mc(mci)) {
mci               355 drivers/edac/r82600_edac.c 	edac_mc_free(mci);
mci               371 drivers/edac/r82600_edac.c 	struct mem_ctl_info *mci;
mci               378 drivers/edac/r82600_edac.c 	if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL)
mci               381 drivers/edac/r82600_edac.c 	edac_mc_free(mci);
mci                45 drivers/edac/sb_edac.c #define sbridge_mc_printk(mci, level, fmt, arg...)		\
mci                46 drivers/edac/sb_edac.c 	edac_mc_chipset_printk(mci, level, "sbridge", fmt, ##arg)
mci               361 drivers/edac/sb_edac.c 	struct mem_ctl_info	*mci;
mci              1565 drivers/edac/sb_edac.c static void get_source_id(struct mem_ctl_info *mci)
mci              1567 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              1582 drivers/edac/sb_edac.c static int __populate_dimms(struct mem_ctl_info *mci,
mci              1586 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              1623 drivers/edac/sb_edac.c 			dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers, i, j, 0);
mci              1676 drivers/edac/sb_edac.c static int get_dimm_config(struct mem_ctl_info *mci)
mci              1678 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              1751 drivers/edac/sb_edac.c 	return __populate_dimms(mci, knl_mc_sizes, mode);
mci              1754 drivers/edac/sb_edac.c static void get_memory_layout(const struct mem_ctl_info *mci)
mci              1756 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              1922 drivers/edac/sb_edac.c 			return sbridge_dev->mci;
mci              1927 drivers/edac/sb_edac.c static int get_memory_error_data(struct mem_ctl_info *mci,
mci              1935 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              2086 drivers/edac/sb_edac.c 	mci = new_mci;
mci              2087 drivers/edac/sb_edac.c 	pvt = mci->pvt_info;
mci              2241 drivers/edac/sb_edac.c static int get_memory_error_data_from_mce(struct mem_ctl_info *mci,
mci              2257 drivers/edac/sb_edac.c 	pvt = mci->pvt_info;
mci              2488 drivers/edac/sb_edac.c static int sbridge_mci_bind_devs(struct mem_ctl_info *mci,
mci              2491 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              2562 drivers/edac/sb_edac.c static int ibridge_mci_bind_devs(struct mem_ctl_info *mci,
mci              2565 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              2648 drivers/edac/sb_edac.c static int haswell_mci_bind_devs(struct mem_ctl_info *mci,
mci              2651 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              2733 drivers/edac/sb_edac.c static int broadwell_mci_bind_devs(struct mem_ctl_info *mci,
mci              2736 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              2814 drivers/edac/sb_edac.c static int knl_mci_bind_devs(struct mem_ctl_info *mci,
mci              2817 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              2949 drivers/edac/sb_edac.c static void sbridge_mce_output_error(struct mem_ctl_info *mci,
mci              2953 drivers/edac/sb_edac.c 	struct sbridge_pvt *pvt = mci->pvt_info;
mci              3053 drivers/edac/sb_edac.c 			edac_mc_handle_error(tp_event, mci, core_err_cnt,
mci              3060 drivers/edac/sb_edac.c 		rc = get_memory_error_data(mci, m->addr, &socket, &ha,
mci              3064 drivers/edac/sb_edac.c 		rc = get_memory_error_data_from_mce(mci, m, &socket, &ha,
mci              3075 drivers/edac/sb_edac.c 	mci = new_mci;
mci              3076 drivers/edac/sb_edac.c 	pvt = mci->pvt_info;
mci              3116 drivers/edac/sb_edac.c 	edac_mc_handle_error(tp_event, mci, core_err_cnt,
mci              3122 drivers/edac/sb_edac.c 	edac_mc_handle_error(tp_event, mci, core_err_cnt, 0, 0, 0,
mci              3136 drivers/edac/sb_edac.c 	struct mem_ctl_info *mci;
mci              3163 drivers/edac/sb_edac.c 	mci = get_mci_for_node_id(mce->socketid, IMC0);
mci              3164 drivers/edac/sb_edac.c 	if (!mci)
mci              3172 drivers/edac/sb_edac.c 	sbridge_mc_printk(mci, KERN_DEBUG, "HANDLING MCE MEMORY ERROR\n");
mci              3174 drivers/edac/sb_edac.c 	sbridge_mc_printk(mci, KERN_DEBUG, "CPU %d: Machine Check %s: %Lx "
mci              3177 drivers/edac/sb_edac.c 	sbridge_mc_printk(mci, KERN_DEBUG, "TSC %llx ", mce->tsc);
mci              3178 drivers/edac/sb_edac.c 	sbridge_mc_printk(mci, KERN_DEBUG, "ADDR %llx ", mce->addr);
mci              3179 drivers/edac/sb_edac.c 	sbridge_mc_printk(mci, KERN_DEBUG, "MISC %llx ", mce->misc);
mci              3181 drivers/edac/sb_edac.c 	sbridge_mc_printk(mci, KERN_DEBUG, "PROCESSOR %u:%x TIME %llu SOCKET "
mci              3185 drivers/edac/sb_edac.c 	sbridge_mce_output_error(mci, mce);
mci              3202 drivers/edac/sb_edac.c 	struct mem_ctl_info *mci = sbridge_dev->mci;
mci              3205 drivers/edac/sb_edac.c 	if (unlikely(!mci || !mci->pvt_info)) {
mci              3212 drivers/edac/sb_edac.c 	pvt = mci->pvt_info;
mci              3215 drivers/edac/sb_edac.c 		 mci, &sbridge_dev->pdev[0]->dev);
mci              3218 drivers/edac/sb_edac.c 	edac_mc_del_mc(mci->pdev);
mci              3220 drivers/edac/sb_edac.c 	edac_dbg(1, "%s: free mci struct\n", mci->ctl_name);
mci              3221 drivers/edac/sb_edac.c 	kfree(mci->ctl_name);
mci              3222 drivers/edac/sb_edac.c 	edac_mc_free(mci);
mci              3223 drivers/edac/sb_edac.c 	sbridge_dev->mci = NULL;
mci              3228 drivers/edac/sb_edac.c 	struct mem_ctl_info *mci;
mci              3242 drivers/edac/sb_edac.c 	mci = edac_mc_alloc(sbridge_dev->mc, ARRAY_SIZE(layers), layers,
mci              3245 drivers/edac/sb_edac.c 	if (unlikely(!mci))
mci              3249 drivers/edac/sb_edac.c 		 mci, &pdev->dev);
mci              3251 drivers/edac/sb_edac.c 	pvt = mci->pvt_info;
mci              3256 drivers/edac/sb_edac.c 	sbridge_dev->mci = mci;
mci              3258 drivers/edac/sb_edac.c 	mci->mtype_cap = type == KNIGHTS_LANDING ?
mci              3260 drivers/edac/sb_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE;
mci              3261 drivers/edac/sb_edac.c 	mci->edac_cap = EDAC_FLAG_NONE;
mci              3262 drivers/edac/sb_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci              3263 drivers/edac/sb_edac.c 	mci->dev_name = pci_name(pdev);
mci              3264 drivers/edac/sb_edac.c 	mci->ctl_page_to_phys = NULL;
mci              3286 drivers/edac/sb_edac.c 		rc = ibridge_mci_bind_devs(mci, sbridge_dev);
mci              3289 drivers/edac/sb_edac.c 		get_source_id(mci);
mci              3290 drivers/edac/sb_edac.c 		mci->ctl_name = kasprintf(GFP_KERNEL, "Ivy Bridge SrcID#%d_Ha#%d",
mci              3311 drivers/edac/sb_edac.c 		rc = sbridge_mci_bind_devs(mci, sbridge_dev);
mci              3314 drivers/edac/sb_edac.c 		get_source_id(mci);
mci              3315 drivers/edac/sb_edac.c 		mci->ctl_name = kasprintf(GFP_KERNEL, "Sandy Bridge SrcID#%d_Ha#%d",
mci              3336 drivers/edac/sb_edac.c 		rc = haswell_mci_bind_devs(mci, sbridge_dev);
mci              3339 drivers/edac/sb_edac.c 		get_source_id(mci);
mci              3340 drivers/edac/sb_edac.c 		mci->ctl_name = kasprintf(GFP_KERNEL, "Haswell SrcID#%d_Ha#%d",
mci              3361 drivers/edac/sb_edac.c 		rc = broadwell_mci_bind_devs(mci, sbridge_dev);
mci              3364 drivers/edac/sb_edac.c 		get_source_id(mci);
mci              3365 drivers/edac/sb_edac.c 		mci->ctl_name = kasprintf(GFP_KERNEL, "Broadwell SrcID#%d_Ha#%d",
mci              3385 drivers/edac/sb_edac.c 		rc = knl_mci_bind_devs(mci, sbridge_dev);
mci              3388 drivers/edac/sb_edac.c 		get_source_id(mci);
mci              3389 drivers/edac/sb_edac.c 		mci->ctl_name = kasprintf(GFP_KERNEL, "Knights Landing SrcID#%d_Ha#%d",
mci              3394 drivers/edac/sb_edac.c 	if (!mci->ctl_name) {
mci              3400 drivers/edac/sb_edac.c 	rc = get_dimm_config(mci);
mci              3405 drivers/edac/sb_edac.c 	get_memory_layout(mci);
mci              3408 drivers/edac/sb_edac.c 	mci->pdev = &pdev->dev;
mci              3411 drivers/edac/sb_edac.c 	if (unlikely(edac_mc_add_mc(mci))) {
mci              3420 drivers/edac/sb_edac.c 	kfree(mci->ctl_name);
mci              3422 drivers/edac/sb_edac.c 	edac_mc_free(mci);
mci              3423 drivers/edac/sb_edac.c 	sbridge_dev->mci = NULL;
mci                24 drivers/edac/skx_base.c #define skx_mc_printk(mci, level, fmt, arg...)		\
mci                25 drivers/edac/skx_base.c 	edac_mc_chipset_printk(mci, level, "skx", fmt, ##arg)
mci               159 drivers/edac/skx_base.c static int skx_get_dimm_config(struct mem_ctl_info *mci)
mci               161 drivers/edac/skx_base.c 	struct skx_pvt *pvt = mci->pvt_info;
mci               176 drivers/edac/skx_base.c 			dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms,
mci               177 drivers/edac/skx_base.c 					     mci->n_layers, i, j, 0);
mci               375 drivers/edac/skx_common.c 	struct mem_ctl_info *mci;
mci               387 drivers/edac/skx_common.c 	mci = edac_mc_alloc(imc->mc, ARRAY_SIZE(layers), layers,
mci               390 drivers/edac/skx_common.c 	if (unlikely(!mci))
mci               393 drivers/edac/skx_common.c 	edac_dbg(0, "MC#%d: mci = %p\n", imc->mc, mci);
mci               396 drivers/edac/skx_common.c 	imc->mci = mci;
mci               397 drivers/edac/skx_common.c 	pvt = mci->pvt_info;
mci               400 drivers/edac/skx_common.c 	mci->ctl_name = kasprintf(GFP_KERNEL, "%s#%d IMC#%d", ctl_name,
mci               402 drivers/edac/skx_common.c 	if (!mci->ctl_name) {
mci               407 drivers/edac/skx_common.c 	mci->mtype_cap = MEM_FLAG_DDR4 | MEM_FLAG_NVDIMM;
mci               408 drivers/edac/skx_common.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE;
mci               409 drivers/edac/skx_common.c 	mci->edac_cap = EDAC_FLAG_NONE;
mci               410 drivers/edac/skx_common.c 	mci->mod_name = mod_str;
mci               411 drivers/edac/skx_common.c 	mci->dev_name = pci_name(pdev);
mci               412 drivers/edac/skx_common.c 	mci->ctl_page_to_phys = NULL;
mci               414 drivers/edac/skx_common.c 	rc = get_dimm_config(mci);
mci               419 drivers/edac/skx_common.c 	mci->pdev = &pdev->dev;
mci               422 drivers/edac/skx_common.c 	if (unlikely(edac_mc_add_mc(mci))) {
mci               431 drivers/edac/skx_common.c 	kfree(mci->ctl_name);
mci               433 drivers/edac/skx_common.c 	edac_mc_free(mci);
mci               434 drivers/edac/skx_common.c 	imc->mci = NULL;
mci               440 drivers/edac/skx_common.c 	struct mem_ctl_info *mci = imc->mci;
mci               442 drivers/edac/skx_common.c 	if (!mci)
mci               445 drivers/edac/skx_common.c 	edac_dbg(0, "MC%d: mci = %p\n", imc->mc, mci);
mci               448 drivers/edac/skx_common.c 	edac_mc_del_mc(mci->pdev);
mci               450 drivers/edac/skx_common.c 	edac_dbg(1, "%s: free mci struct\n", mci->ctl_name);
mci               451 drivers/edac/skx_common.c 	kfree(mci->ctl_name);
mci               452 drivers/edac/skx_common.c 	edac_mc_free(mci);
mci               466 drivers/edac/skx_common.c 			return d->imc[lmc].mci;
mci               473 drivers/edac/skx_common.c static void skx_mce_output_error(struct mem_ctl_info *mci,
mci               559 drivers/edac/skx_common.c 	edac_mc_handle_error(tp_event, mci, core_err_cnt,
mci               570 drivers/edac/skx_common.c 	struct mem_ctl_info *mci;
mci               587 drivers/edac/skx_common.c 		mci = get_mci(res.socket, res.imc);
mci               592 drivers/edac/skx_common.c 		mci = res.dev->imc[res.imc].mci;
mci               595 drivers/edac/skx_common.c 	if (!mci)
mci               603 drivers/edac/skx_common.c 	skx_mc_printk(mci, KERN_DEBUG, "HANDLING MCE MEMORY ERROR\n");
mci               605 drivers/edac/skx_common.c 	skx_mc_printk(mci, KERN_DEBUG, "CPU %d: Machine Check %s: 0x%llx "
mci               608 drivers/edac/skx_common.c 	skx_mc_printk(mci, KERN_DEBUG, "TSC 0x%llx ", mce->tsc);
mci               609 drivers/edac/skx_common.c 	skx_mc_printk(mci, KERN_DEBUG, "ADDR 0x%llx ", mce->addr);
mci               610 drivers/edac/skx_common.c 	skx_mc_printk(mci, KERN_DEBUG, "MISC 0x%llx ", mce->misc);
mci               612 drivers/edac/skx_common.c 	skx_mc_printk(mci, KERN_DEBUG, "PROCESSOR %u:0x%x TIME %llu SOCKET "
mci               616 drivers/edac/skx_common.c 	skx_mce_output_error(mci, mce, &res);
mci               631 drivers/edac/skx_common.c 			if (d->imc[i].mci)
mci                20 drivers/edac/skx_common.h #define skx_mc_printk(mci, level, fmt, arg...)		\
mci                21 drivers/edac/skx_common.h 	edac_mc_chipset_printk(mci, level, "skx", fmt, ##arg)
mci                59 drivers/edac/skx_common.h 		struct mem_ctl_info *mci;
mci               114 drivers/edac/skx_common.h typedef int (*get_dimm_config_f)(struct mem_ctl_info *mci);
mci               473 drivers/edac/synopsys_edac.c static void handle_error(struct mem_ctl_info *mci, struct synps_ecc_status *p)
mci               475 drivers/edac/synopsys_edac.c 	struct synps_edac_priv *priv = mci->pvt_info;
mci               493 drivers/edac/synopsys_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci,
mci               511 drivers/edac/synopsys_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci,
mci               529 drivers/edac/synopsys_edac.c 	struct mem_ctl_info *mci = dev_id;
mci               533 drivers/edac/synopsys_edac.c 	priv = mci->pvt_info;
mci               547 drivers/edac/synopsys_edac.c 	handle_error(mci, &priv->stat);
mci               561 drivers/edac/synopsys_edac.c static void check_errors(struct mem_ctl_info *mci)
mci               567 drivers/edac/synopsys_edac.c 	priv = mci->pvt_info;
mci               576 drivers/edac/synopsys_edac.c 	handle_error(mci, &priv->stat);
mci               768 drivers/edac/synopsys_edac.c static void init_csrows(struct mem_ctl_info *mci)
mci               770 drivers/edac/synopsys_edac.c 	struct synps_edac_priv *priv = mci->pvt_info;
mci               779 drivers/edac/synopsys_edac.c 	for (row = 0; row < mci->nr_csrows; row++) {
mci               780 drivers/edac/synopsys_edac.c 		csi = mci->csrows[row];
mci               803 drivers/edac/synopsys_edac.c static void mc_init(struct mem_ctl_info *mci, struct platform_device *pdev)
mci               807 drivers/edac/synopsys_edac.c 	mci->pdev = &pdev->dev;
mci               808 drivers/edac/synopsys_edac.c 	priv = mci->pvt_info;
mci               809 drivers/edac/synopsys_edac.c 	platform_set_drvdata(pdev, mci);
mci               812 drivers/edac/synopsys_edac.c 	mci->mtype_cap = MEM_FLAG_DDR3 | MEM_FLAG_DDR2;
mci               813 drivers/edac/synopsys_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               814 drivers/edac/synopsys_edac.c 	mci->scrub_cap = SCRUB_HW_SRC;
mci               815 drivers/edac/synopsys_edac.c 	mci->scrub_mode = SCRUB_NONE;
mci               817 drivers/edac/synopsys_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               818 drivers/edac/synopsys_edac.c 	mci->ctl_name = "synps_ddr_controller";
mci               819 drivers/edac/synopsys_edac.c 	mci->dev_name = SYNPS_EDAC_MOD_STRING;
mci               820 drivers/edac/synopsys_edac.c 	mci->mod_name = SYNPS_EDAC_MOD_VER;
mci               826 drivers/edac/synopsys_edac.c 		mci->edac_check = check_errors;
mci               829 drivers/edac/synopsys_edac.c 	mci->ctl_page_to_phys = NULL;
mci               831 drivers/edac/synopsys_edac.c 	init_csrows(mci);
mci               848 drivers/edac/synopsys_edac.c static int setup_irq(struct mem_ctl_info *mci,
mci               851 drivers/edac/synopsys_edac.c 	struct synps_edac_priv *priv = mci->pvt_info;
mci               862 drivers/edac/synopsys_edac.c 			       0, dev_name(&pdev->dev), mci);
mci               976 drivers/edac/synopsys_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               977 drivers/edac/synopsys_edac.c 	struct synps_edac_priv *priv = mci->pvt_info;
mci               990 drivers/edac/synopsys_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci               991 drivers/edac/synopsys_edac.c 	struct synps_edac_priv *priv = mci->pvt_info;
mci              1005 drivers/edac/synopsys_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci              1006 drivers/edac/synopsys_edac.c 	struct synps_edac_priv *priv = mci->pvt_info;
mci              1017 drivers/edac/synopsys_edac.c 	struct mem_ctl_info *mci = to_mci(dev);
mci              1018 drivers/edac/synopsys_edac.c 	struct synps_edac_priv *priv = mci->pvt_info;
mci              1033 drivers/edac/synopsys_edac.c static int edac_create_sysfs_attributes(struct mem_ctl_info *mci)
mci              1037 drivers/edac/synopsys_edac.c 	rc = device_create_file(&mci->dev, &dev_attr_inject_data_error);
mci              1040 drivers/edac/synopsys_edac.c 	rc = device_create_file(&mci->dev, &dev_attr_inject_data_poison);
mci              1046 drivers/edac/synopsys_edac.c static void edac_remove_sysfs_attributes(struct mem_ctl_info *mci)
mci              1048 drivers/edac/synopsys_edac.c 	device_remove_file(&mci->dev, &dev_attr_inject_data_error);
mci              1049 drivers/edac/synopsys_edac.c 	device_remove_file(&mci->dev, &dev_attr_inject_data_poison);
mci              1292 drivers/edac/synopsys_edac.c 	struct mem_ctl_info *mci;
mci              1318 drivers/edac/synopsys_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers,
mci              1320 drivers/edac/synopsys_edac.c 	if (!mci) {
mci              1326 drivers/edac/synopsys_edac.c 	priv = mci->pvt_info;
mci              1330 drivers/edac/synopsys_edac.c 	mc_init(mci, pdev);
mci              1333 drivers/edac/synopsys_edac.c 		rc = setup_irq(mci, pdev);
mci              1338 drivers/edac/synopsys_edac.c 	rc = edac_mc_add_mc(mci);
mci              1347 drivers/edac/synopsys_edac.c 		if (edac_create_sysfs_attributes(mci)) {
mci              1369 drivers/edac/synopsys_edac.c 	edac_mc_free(mci);
mci              1382 drivers/edac/synopsys_edac.c 	struct mem_ctl_info *mci = platform_get_drvdata(pdev);
mci              1383 drivers/edac/synopsys_edac.c 	struct synps_edac_priv *priv = mci->pvt_info;
mci              1390 drivers/edac/synopsys_edac.c 		edac_remove_sysfs_attributes(mci);
mci              1394 drivers/edac/synopsys_edac.c 	edac_mc_free(mci);
mci               547 drivers/edac/thunderx_edac.c 	struct mem_ctl_info *mci = dev_id;
mci               548 drivers/edac/thunderx_edac.c 	struct thunderx_lmc *lmc = mci->pvt_info;
mci               575 drivers/edac/thunderx_edac.c 	struct mem_ctl_info *mci = dev_id;
mci               576 drivers/edac/thunderx_edac.c 	struct thunderx_lmc *lmc = mci->pvt_info;
mci               624 drivers/edac/thunderx_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               629 drivers/edac/thunderx_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               666 drivers/edac/thunderx_edac.c 	struct mem_ctl_info *mci;
mci               688 drivers/edac/thunderx_edac.c 	mci = edac_mc_alloc(pci_dev_to_mc_idx(pdev), 1, &layer,
mci               690 drivers/edac/thunderx_edac.c 	if (!mci)
mci               693 drivers/edac/thunderx_edac.c 	mci->pdev = &pdev->dev;
mci               694 drivers/edac/thunderx_edac.c 	lmc = mci->pvt_info;
mci               696 drivers/edac/thunderx_edac.c 	pci_set_drvdata(pdev, mci);
mci               705 drivers/edac/thunderx_edac.c 		mci->mtype_cap = FIELD_GET(LMC_DDR_PLL_CTL_DDR4,
mci               709 drivers/edac/thunderx_edac.c 		mci->mtype_cap = FIELD_GET(LMC_DDR_PLL_CTL_DDR4,
mci               714 drivers/edac/thunderx_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED;
mci               715 drivers/edac/thunderx_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               717 drivers/edac/thunderx_edac.c 	mci->mod_name = "thunderx-lmc";
mci               718 drivers/edac/thunderx_edac.c 	mci->ctl_name = "thunderx-lmc";
mci               719 drivers/edac/thunderx_edac.c 	mci->dev_name = dev_name(&pdev->dev);
mci               720 drivers/edac/thunderx_edac.c 	mci->scrub_mode = SCRUB_NONE;
mci               737 drivers/edac/thunderx_edac.c 					"[EDAC] ThunderX LMC", mci);
mci               771 drivers/edac/thunderx_edac.c 	ret = edac_mc_add_mc(mci);
mci               783 drivers/edac/thunderx_edac.c 		ret = thunderx_create_debugfs_nodes(mci->debugfs,
mci               798 drivers/edac/thunderx_edac.c 	edac_mc_free(mci);
mci               805 drivers/edac/thunderx_edac.c 	struct mem_ctl_info *mci = pci_get_drvdata(pdev);
mci               806 drivers/edac/thunderx_edac.c 	struct thunderx_lmc *lmc = mci->pvt_info;
mci               811 drivers/edac/thunderx_edac.c 	edac_mc_free(mci);
mci              1824 drivers/edac/thunderx_edac.c 	struct thunderx_l2c *mci = container_of(msix, struct thunderx_l2c,
mci              1827 drivers/edac/thunderx_edac.c 	unsigned long head = ring_pos(mci->ring_head, ARRAY_SIZE(mci->err_ctx));
mci              1828 drivers/edac/thunderx_edac.c 	struct l2c_err_ctx *ctx = &mci->err_ctx[head];
mci              1830 drivers/edac/thunderx_edac.c 	ctx->reg_int = readq(mci->regs + L2C_MCI_INT_W1C);
mci              1831 drivers/edac/thunderx_edac.c 	ctx->reg_ext = readq(mci->regs + L2C_MCI_ERR);
mci              1833 drivers/edac/thunderx_edac.c 	writeq(ctx->reg_int, mci->regs + L2C_MCI_INT_W1C);
mci              1837 drivers/edac/thunderx_edac.c 	mci->ring_head++;
mci                94 drivers/edac/ti_edac.c 	struct mem_ctl_info *mci = data;
mci                95 drivers/edac/ti_edac.c 	struct ti_edac *edac = mci->pvt_info;
mci               106 drivers/edac/ti_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, err_count,
mci               109 drivers/edac/ti_edac.c 				     mci->ctl_name, "1B");
mci               114 drivers/edac/ti_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               117 drivers/edac/ti_edac.c 				     mci->ctl_name, "2B");
mci               121 drivers/edac/ti_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               123 drivers/edac/ti_edac.c 				     mci->ctl_name, "WR");
mci               130 drivers/edac/ti_edac.c static void ti_edac_setup_dimm(struct mem_ctl_info *mci, u32 type)
mci               133 drivers/edac/ti_edac.c 	struct ti_edac *edac = mci->pvt_info;
mci               138 drivers/edac/ti_edac.c 	dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers, 0, 0, 0);
mci               235 drivers/edac/ti_edac.c 	struct mem_ctl_info *mci;
mci               261 drivers/edac/ti_edac.c 	mci = edac_mc_alloc(emif_id, 1, layers, sizeof(*edac));
mci               262 drivers/edac/ti_edac.c 	if (!mci)
mci               265 drivers/edac/ti_edac.c 	mci->pdev = &pdev->dev;
mci               266 drivers/edac/ti_edac.c 	edac = mci->pvt_info;
mci               268 drivers/edac/ti_edac.c 	platform_set_drvdata(pdev, mci);
mci               270 drivers/edac/ti_edac.c 	mci->mtype_cap = MEM_FLAG_DDR3 | MEM_FLAG_DDR2;
mci               271 drivers/edac/ti_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_SECDED | EDAC_FLAG_NONE;
mci               272 drivers/edac/ti_edac.c 	mci->mod_name = EDAC_MOD_NAME;
mci               273 drivers/edac/ti_edac.c 	mci->ctl_name = id->compatible;
mci               274 drivers/edac/ti_edac.c 	mci->dev_name = dev_name(&pdev->dev);
mci               277 drivers/edac/ti_edac.c 	ti_edac_setup_dimm(mci, (u32)(id->data));
mci               288 drivers/edac/ti_edac.c 			       "emif-edac-irq", mci);
mci               295 drivers/edac/ti_edac.c 	ret = edac_mc_add_mc(mci);
mci               314 drivers/edac/ti_edac.c 	edac_mc_free(mci);
mci               320 drivers/edac/ti_edac.c 	struct mem_ctl_info *mci = platform_get_drvdata(pdev);
mci               323 drivers/edac/ti_edac.c 	edac_mc_free(mci);
mci               150 drivers/edac/x38_edac.c static void x38_clear_error_info(struct mem_ctl_info *mci)
mci               154 drivers/edac/x38_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               164 drivers/edac/x38_edac.c static void x38_get_and_clear_error_info(struct mem_ctl_info *mci,
mci               168 drivers/edac/x38_edac.c 	void __iomem *window = mci->pvt_info;
mci               170 drivers/edac/x38_edac.c 	pdev = to_pci_dev(mci->pdev);
mci               200 drivers/edac/x38_edac.c 	x38_clear_error_info(mci);
mci               203 drivers/edac/x38_edac.c static void x38_process_error_info(struct mem_ctl_info *mci,
mci               213 drivers/edac/x38_edac.c 		edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0,
mci               222 drivers/edac/x38_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1,
mci               228 drivers/edac/x38_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1,
mci               237 drivers/edac/x38_edac.c static void x38_check(struct mem_ctl_info *mci)
mci               241 drivers/edac/x38_edac.c 	edac_dbg(1, "MC%d\n", mci->mc_idx);
mci               242 drivers/edac/x38_edac.c 	x38_get_and_clear_error_info(mci, &info);
mci               243 drivers/edac/x38_edac.c 	x38_process_error_info(mci, &info);
mci               322 drivers/edac/x38_edac.c 	struct mem_ctl_info *mci = NULL;
mci               345 drivers/edac/x38_edac.c 	mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, 0);
mci               346 drivers/edac/x38_edac.c 	if (!mci)
mci               351 drivers/edac/x38_edac.c 	mci->pdev = &pdev->dev;
mci               352 drivers/edac/x38_edac.c 	mci->mtype_cap = MEM_FLAG_DDR2;
mci               354 drivers/edac/x38_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_SECDED;
mci               355 drivers/edac/x38_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               357 drivers/edac/x38_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               358 drivers/edac/x38_edac.c 	mci->ctl_name = x38_devs[dev_idx].ctl_name;
mci               359 drivers/edac/x38_edac.c 	mci->dev_name = pci_name(pdev);
mci               360 drivers/edac/x38_edac.c 	mci->edac_check = x38_check;
mci               361 drivers/edac/x38_edac.c 	mci->ctl_page_to_phys = NULL;
mci               362 drivers/edac/x38_edac.c 	mci->pvt_info = window;
mci               372 drivers/edac/x38_edac.c 	for (i = 0; i < mci->nr_csrows; i++) {
mci               374 drivers/edac/x38_edac.c 		struct csrow_info *csrow = mci->csrows[i];
mci               394 drivers/edac/x38_edac.c 	x38_clear_error_info(mci);
mci               397 drivers/edac/x38_edac.c 	if (edac_mc_add_mc(mci)) {
mci               408 drivers/edac/x38_edac.c 	if (mci)
mci               409 drivers/edac/x38_edac.c 		edac_mc_free(mci);
mci               432 drivers/edac/x38_edac.c 	struct mem_ctl_info *mci;
mci               436 drivers/edac/x38_edac.c 	mci = edac_mc_del_mc(&pdev->dev);
mci               437 drivers/edac/x38_edac.c 	if (!mci)
mci               440 drivers/edac/x38_edac.c 	iounmap(mci->pvt_info);
mci               442 drivers/edac/x38_edac.c 	edac_mc_free(mci);
mci               134 drivers/edac/xgene_edac.c 	struct mem_ctl_info	*mci;
mci               144 drivers/edac/xgene_edac.c 	struct mem_ctl_info *mci = file->private_data;
mci               145 drivers/edac/xgene_edac.c 	struct xgene_edac_mc_ctx *ctx = mci->pvt_info;
mci               162 drivers/edac/xgene_edac.c static void xgene_edac_mc_create_debugfs_node(struct mem_ctl_info *mci)
mci               167 drivers/edac/xgene_edac.c 	if (!mci->debugfs)
mci               170 drivers/edac/xgene_edac.c 	edac_debugfs_create_file("inject_ctrl", S_IWUSR, mci->debugfs, mci,
mci               174 drivers/edac/xgene_edac.c static void xgene_edac_mc_check(struct mem_ctl_info *mci)
mci               176 drivers/edac/xgene_edac.c 	struct xgene_edac_mc_ctx *ctx = mci->pvt_info;
mci               199 drivers/edac/xgene_edac.c 			edac_mc_chipset_printk(mci, KERN_ERR, "X-Gene",
mci               202 drivers/edac/xgene_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci,
mci               203 drivers/edac/xgene_edac.c 				1, 0, 0, 0, 0, 0, -1, mci->ctl_name, "");
mci               214 drivers/edac/xgene_edac.c 			edac_mc_chipset_printk(mci, KERN_WARNING, "X-Gene",
mci               221 drivers/edac/xgene_edac.c 			edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci,
mci               222 drivers/edac/xgene_edac.c 				1, 0, 0, 0, 0, 0, -1, mci->ctl_name, "");
mci               237 drivers/edac/xgene_edac.c 			edac_mc_chipset_printk(mci, KERN_WARNING, "X-Gene",
mci               240 drivers/edac/xgene_edac.c 			edac_mc_chipset_printk(mci, KERN_WARNING, "X-Gene",
mci               247 drivers/edac/xgene_edac.c static void xgene_edac_mc_irq_ctl(struct mem_ctl_info *mci, bool enable)
mci               249 drivers/edac/xgene_edac.c 	struct xgene_edac_mc_ctx *ctx = mci->pvt_info;
mci               344 drivers/edac/xgene_edac.c 	struct mem_ctl_info *mci;
mci               386 drivers/edac/xgene_edac.c 	mci = edac_mc_alloc(tmp_ctx.mcu_id, ARRAY_SIZE(layers), layers,
mci               388 drivers/edac/xgene_edac.c 	if (!mci) {
mci               393 drivers/edac/xgene_edac.c 	ctx = mci->pvt_info;
mci               396 drivers/edac/xgene_edac.c 	ctx->mci = mci;
mci               397 drivers/edac/xgene_edac.c 	mci->pdev = &mci->dev;
mci               398 drivers/edac/xgene_edac.c 	mci->ctl_name = ctx->name;
mci               399 drivers/edac/xgene_edac.c 	mci->dev_name = ctx->name;
mci               401 drivers/edac/xgene_edac.c 	mci->mtype_cap = MEM_FLAG_RDDR | MEM_FLAG_RDDR2 | MEM_FLAG_RDDR3 |
mci               403 drivers/edac/xgene_edac.c 	mci->edac_ctl_cap = EDAC_FLAG_SECDED;
mci               404 drivers/edac/xgene_edac.c 	mci->edac_cap = EDAC_FLAG_SECDED;
mci               405 drivers/edac/xgene_edac.c 	mci->mod_name = EDAC_MOD_STR;
mci               406 drivers/edac/xgene_edac.c 	mci->ctl_page_to_phys = NULL;
mci               407 drivers/edac/xgene_edac.c 	mci->scrub_cap = SCRUB_FLAG_HW_SRC;
mci               408 drivers/edac/xgene_edac.c 	mci->scrub_mode = SCRUB_HW_SRC;
mci               411 drivers/edac/xgene_edac.c 		mci->edac_check = xgene_edac_mc_check;
mci               413 drivers/edac/xgene_edac.c 	if (edac_mc_add_mc(mci)) {
mci               419 drivers/edac/xgene_edac.c 	xgene_edac_mc_create_debugfs_node(mci);
mci               423 drivers/edac/xgene_edac.c 	xgene_edac_mc_irq_ctl(mci, true);
mci               431 drivers/edac/xgene_edac.c 	edac_mc_free(mci);
mci               439 drivers/edac/xgene_edac.c 	xgene_edac_mc_irq_ctl(mcu->mci, false);
mci               440 drivers/edac/xgene_edac.c 	edac_mc_del_mc(&mcu->mci->dev);
mci               441 drivers/edac/xgene_edac.c 	edac_mc_free(mcu->mci);
mci              1830 drivers/edac/xgene_edac.c 			xgene_edac_mc_check(mcu->mci);
mci                25 drivers/media/pci/ddbridge/ddbridge-mci.c static int mci_reset(struct mci *state)
mci                51 drivers/media/pci/ddbridge/ddbridge-mci.c int ddb_mci_config(struct mci *state, u32 config)
mci                61 drivers/media/pci/ddbridge/ddbridge-mci.c static int _mci_cmd_unlocked(struct mci *state,
mci                89 drivers/media/pci/ddbridge/ddbridge-mci.c int ddb_mci_cmd(struct mci *state,
mci               120 drivers/media/pci/ddbridge/ddbridge-mci.c static int probe(struct mci *state)
mci               134 drivers/media/pci/ddbridge/ddbridge-mci.c 	struct mci *state;
mci               246 drivers/media/pci/ddbridge/ddbridge-mci.h 	int (*init)(struct mci *mci);
mci               254 drivers/media/pci/ddbridge/ddbridge-mci.h int ddb_mci_cmd(struct mci *state, struct mci_command *command,
mci               256 drivers/media/pci/ddbridge/ddbridge-mci.h int ddb_mci_config(struct mci *state, u32 config);
mci                45 drivers/media/pci/ddbridge/ddbridge-sx8.c 	struct mci           mci;
mci                58 drivers/media/pci/ddbridge/ddbridge-sx8.c 	struct mci_base *mci_base = state->mci.base;
mci                76 drivers/media/pci/ddbridge/ddbridge-sx8.c 	cmd.demod = state->mci.demod;
mci                77 drivers/media/pci/ddbridge/ddbridge-sx8.c 	stat = ddb_mci_cmd(&state->mci, &cmd, &state->signal_info);
mci               117 drivers/media/pci/ddbridge/ddbridge-sx8.c 	cmd.demod = state->mci.demod;
mci               118 drivers/media/pci/ddbridge/ddbridge-sx8.c 	stat = ddb_mci_cmd(&state->mci, &cmd, &res);
mci               136 drivers/media/pci/ddbridge/ddbridge-sx8.c 	struct mci_base *mci_base = state->mci.base;
mci               141 drivers/media/pci/ddbridge/ddbridge-sx8.c 	cmd.tuner = state->mci.tuner;
mci               143 drivers/media/pci/ddbridge/ddbridge-sx8.c 	cmd.sx8_input_enable.flags = sx8_base->gain_mode[state->mci.tuner];
mci               144 drivers/media/pci/ddbridge/ddbridge-sx8.c 	return ddb_mci_cmd(&state->mci, &cmd, NULL);
mci               150 drivers/media/pci/ddbridge/ddbridge-sx8.c 	struct mci_base *mci_base = state->mci.base;
mci               153 drivers/media/pci/ddbridge/ddbridge-sx8.c 	u32 input = state->mci.tuner;
mci               156 drivers/media/pci/ddbridge/ddbridge-sx8.c 	if (state->mci.demod != SX8_DEMOD_NONE) {
mci               158 drivers/media/pci/ddbridge/ddbridge-sx8.c 		cmd.demod = state->mci.demod;
mci               159 drivers/media/pci/ddbridge/ddbridge-sx8.c 		ddb_mci_cmd(&state->mci, &cmd, NULL);
mci               162 drivers/media/pci/ddbridge/ddbridge-sx8.c 			cmd.demod = state->mci.demod;
mci               164 drivers/media/pci/ddbridge/ddbridge-sx8.c 			ddb_mci_cmd(&state->mci, &cmd, NULL);
mci               165 drivers/media/pci/ddbridge/ddbridge-sx8.c 			ddb_mci_config(&state->mci, SX8_TSCONFIG_MODE_NORMAL);
mci               172 drivers/media/pci/ddbridge/ddbridge-sx8.c 	if (state->mci.demod < SX8_DEMOD_NUM) {
mci               173 drivers/media/pci/ddbridge/ddbridge-sx8.c 		sx8_base->demod_in_use[state->mci.demod] = 0;
mci               174 drivers/media/pci/ddbridge/ddbridge-sx8.c 		state->mci.demod = SX8_DEMOD_NONE;
mci               176 drivers/media/pci/ddbridge/ddbridge-sx8.c 	sx8_base->used_ldpc_bitrate[state->mci.nr] = 0;
mci               186 drivers/media/pci/ddbridge/ddbridge-sx8.c 	struct mci_base *mci_base = state->mci.base;
mci               192 drivers/media/pci/ddbridge/ddbridge-sx8.c 	u32 input = state->mci.tuner;
mci               219 drivers/media/pci/ddbridge/ddbridge-sx8.c 			if (state->mci.nr < 4)
mci               220 drivers/media/pci/ddbridge/ddbridge-sx8.c 				i = state->mci.nr;
mci               222 drivers/media/pci/ddbridge/ddbridge-sx8.c 			i = state->mci.nr;
mci               263 drivers/media/pci/ddbridge/ddbridge-sx8.c 	sx8_base->used_ldpc_bitrate[state->mci.nr] = p->symbol_rate
mci               265 drivers/media/pci/ddbridge/ddbridge-sx8.c 	state->mci.demod = i;
mci               279 drivers/media/pci/ddbridge/ddbridge-sx8.c 		cmd.demod = state->mci.demod;
mci               281 drivers/media/pci/ddbridge/ddbridge-sx8.c 		ddb_mci_cmd(&state->mci, &cmd, NULL);
mci               282 drivers/media/pci/ddbridge/ddbridge-sx8.c 		ddb_mci_config(&state->mci, ts_config);
mci               287 drivers/media/pci/ddbridge/ddbridge-sx8.c 		state->mci.nr, state->mci.tuner, state->mci.demod);
mci               298 drivers/media/pci/ddbridge/ddbridge-sx8.c 	cmd.tuner = state->mci.tuner;
mci               299 drivers/media/pci/ddbridge/ddbridge-sx8.c 	cmd.demod = state->mci.demod;
mci               300 drivers/media/pci/ddbridge/ddbridge-sx8.c 	cmd.output = state->mci.nr;
mci               303 drivers/media/pci/ddbridge/ddbridge-sx8.c 	stat = ddb_mci_cmd(&state->mci, &cmd, NULL);
mci               313 drivers/media/pci/ddbridge/ddbridge-sx8.c 	struct mci_base *mci_base = state->mci.base;
mci               318 drivers/media/pci/ddbridge/ddbridge-sx8.c 	u32 input = state->mci.tuner;
mci               333 drivers/media/pci/ddbridge/ddbridge-sx8.c 	state->mci.demod = 0;
mci               349 drivers/media/pci/ddbridge/ddbridge-sx8.c 	cmd.tuner = state->mci.tuner;
mci               350 drivers/media/pci/ddbridge/ddbridge-sx8.c 	cmd.demod = state->mci.demod;
mci               351 drivers/media/pci/ddbridge/ddbridge-sx8.c 	stat = ddb_mci_cmd(&state->mci, &cmd, NULL);
mci               354 drivers/media/pci/ddbridge/ddbridge-sx8.c 	ddb_mci_config(&state->mci, ts_config);
mci               441 drivers/media/pci/ddbridge/ddbridge-sx8.c 	struct mci_base *mci_base = state->mci.base;
mci               446 drivers/media/pci/ddbridge/ddbridge-sx8.c 	state->mci.tuner = input;
mci               447 drivers/media/pci/ddbridge/ddbridge-sx8.c 	dev_dbg(mci_base->dev, "MCI-%d: input=%d\n", state->mci.nr, input);
mci               471 drivers/media/pci/ddbridge/ddbridge-sx8.c static int init(struct mci *mci)
mci               473 drivers/media/pci/ddbridge/ddbridge-sx8.c 	struct sx8 *state = (struct sx8 *)mci;
mci               475 drivers/media/pci/ddbridge/ddbridge-sx8.c 	state->mci.demod = SX8_DEMOD_NONE;
mci               517 drivers/net/ethernet/dec/tulip/de4x5.c     u_int mci;              /* 21142 MII Connector Interrupt info        */
mci              4717 drivers/net/ethernet/dec/tulip/de4x5.c 	lp->phy[lp->active].mci = *p;
mci                42 drivers/net/wireless/ath/ath9k/ar9003_aic.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci               455 drivers/net/wireless/ath/ath9k/ar9003_aic.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci               583 drivers/net/wireless/ath/ath9k/ar9003_aic.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci               127 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               130 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->bt_version_known ||
mci               131 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	    (mci->bt_state == MCI_BT_SLEEP))
mci               142 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               148 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->wlan_ver_major;
mci               150 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->wlan_ver_minor;
mci               157 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               158 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	u32 *payload = &mci->wlan_channels[0];
mci               160 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (!mci->wlan_channels_update ||
mci               161 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	    (mci->bt_state == MCI_BT_SLEEP))
mci               173 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               177 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->bt_state == MCI_BT_SLEEP)
mci               194 drivers/net/wireless/ath/ath9k/ar9003_mci.c 			mci->need_flush_btinfo = true;
mci               198 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->query_bt = false;
mci               204 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               211 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->query_bt = true;
mci               213 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->unhalt_bt_gpm = true;
mci               214 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->need_flush_btinfo = true;
mci               227 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               231 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->bt_state = MCI_BT_SLEEP;
mci               247 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->bt_state = MCI_BT_AWAKE;
mci               288 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->is_2g && MCI_ANT_ARCH_PA_LNA_SHARED(mci)) {
mci               293 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->is_2g && !mci->update_2g5g && MCI_ANT_ARCH_PA_LNA_SHARED(mci)) {
mci               307 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if ((mci->bt_state == MCI_BT_AWAKE) &&
mci               323 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               326 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	    (mci->bt_state != MCI_BT_SLEEP) &&
mci               327 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	    !mci->halted_bt_gpm) {
mci               331 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->ready = false;
mci               358 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               360 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	*raw_intr = mci->raw_intr;
mci               361 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	*rx_msg_intr = mci->rx_msg_intr;
mci               364 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->raw_intr = 0;
mci               365 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->rx_msg_intr = 0;
mci               372 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               382 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->rx_msg_intr |= rx_msg_intr;
mci               383 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->raw_intr |= raw_intr;
mci               387 drivers/net/wireless/ath/ath9k/ar9003_mci.c 			mci->cont_status = REG_READ(ah, AR_MCI_CONT_STATUS);
mci               396 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               398 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (!mci->update_2g5g &&
mci               399 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	    (mci->is_2g != is_2g))
mci               400 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->update_2g5g = true;
mci               402 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->is_2g = is_2g;
mci               407 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               416 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	payload = (u32 *)(mci->gpm_buf + offset);
mci               427 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               429 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->config & ATH_MCI_CONFIG_MCI_OBS_MCI) {
mci               438 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	} else if (mci->config & ATH_MCI_CONFIG_MCI_OBS_TXRX) {
mci               449 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	} else if (mci->config & ATH_MCI_CONFIG_MCI_OBS_BT) {
mci               498 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               503 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->bt_state != cur_bt_state)
mci               504 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->bt_state = cur_bt_state;
mci               506 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->bt_state != MCI_BT_SLEEP) {
mci               511 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if (mci->unhalt_bt_gpm == true)
mci               518 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci               540 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               553 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->bt_ver_major =
mci               555 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->bt_ver_minor =
mci               557 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->bt_version_known = true;
mci               559 drivers/net/wireless/ath/ath9k/ar9003_mci.c 			mci->bt_ver_major, mci->bt_ver_minor);
mci               565 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->wlan_channels_update = true;
mci               569 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->query_bt = true;
mci               573 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->query_bt = true;
mci               587 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               615 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		p_gpm = (u32 *) (mci->gpm_buf + offset);
mci               678 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		p_gpm = (u32 *) (mci->gpm_buf + offset);
mci               695 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci               735 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci               788 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               806 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (MCI_ANT_ARCH_PA_LNA_SHARED(mci)) {
mci               816 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               831 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (!(mci->config & ATH_MCI_CONFIG_DISABLE_AGGR_THRESH)) {
mci               832 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		thresh = MS(mci->config, ATH_MCI_CONFIG_AGGR_THRESH);
mci               847 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               852 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->config & ATH_MCI_CONFIG_MCI_STAT_DBG) {
mci               923 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               935 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	REG_WRITE(ah, AR_MCI_GPM_0, mci->gpm_addr);
mci               936 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	REG_WRITE(ah, AR_MCI_GPM_1, mci->gpm_len);
mci               937 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	REG_WRITE(ah, AR_MCI_SCHD_TABLE_0, mci->sched_addr);
mci               944 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		u8 ant = MS(mci->config, ATH_MCI_CONFIG_ANT_ARCH);
mci               954 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (is_2g && !(mci->config & ATH_MCI_CONFIG_DISABLE_OSLA))
mci               971 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->config & ATH_MCI_CONFIG_CONCUR_TX) {
mci               982 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	regval = MS(mci->config, ATH_MCI_CONFIG_CLK_DIV);
mci              1017 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (MCI_ANT_ARCH_PA_LNA_SHARED(mci))
mci              1026 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->ready = true;
mci              1041 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci              1057 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1060 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (!mci->update_2g5g || (mci->bt_state == MCI_BT_SLEEP))
mci              1063 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->is_2g) {
mci              1084 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1103 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->update_2g5g = queue;
mci              1107 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->wlan_channels_update = queue;
mci              1112 drivers/net/wireless/ath/ath9k/ar9003_mci.c 			mci->unhalt_bt_gpm = queue;
mci              1115 drivers/net/wireless/ath/ath9k/ar9003_mci.c 				mci->halted_bt_gpm = false;
mci              1121 drivers/net/wireless/ath/ath9k/ar9003_mci.c 			mci->halted_bt_gpm = !queue;
mci              1132 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1134 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (!mci->update_2g5g && !force)
mci              1137 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->is_2g) {
mci              1147 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if (!(mci->config & ATH_MCI_CONFIG_DISABLE_OSLA))
mci              1171 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1186 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	} else if (check_bt && (mci->bt_state == MCI_BT_SLEEP)) {
mci              1234 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci              1256 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci              1271 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1273 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->gpm_addr = gpm_addr;
mci              1274 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->gpm_buf = gpm_buf;
mci              1275 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->gpm_len = len;
mci              1276 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->sched_addr = sched_addr;
mci              1292 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1298 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if (mci->ready) {
mci              1309 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if (value < mci->gpm_len)
mci              1310 drivers/net/wireless/ath/ath9k/ar9003_mci.c 			mci->gpm_idx = value;
mci              1312 drivers/net/wireless/ath/ath9k/ar9003_mci.c 			mci->gpm_idx = 0;
mci              1326 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->bt_state = MCI_BT_AWAKE;
mci              1330 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if (mci->unhalt_bt_gpm)
mci              1337 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->update_2g5g = true;
mci              1339 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if (mci->config & ATH_MCI_CONFIG_MCI_OBS_MASK) {
mci              1360 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if ((tsf - mci->last_recovery) <= MCI_RECOVERY_DUR_TSF) {
mci              1366 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->last_recovery = tsf;
mci              1368 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->query_bt = true;
mci              1369 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->need_flush_btinfo = true;
mci              1374 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		value = !(mci->config & ATH_MCI_CONFIG_DISABLE_FTP_STOMP);
mci              1377 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		value = (!mci->unhalt_bt_gpm && mci->need_flush_btinfo) ? 1 : 0;
mci              1378 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->need_flush_btinfo = false;
mci              1407 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1415 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->is_2g = false;
mci              1416 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->update_2g5g = true;
mci              1420 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->update_2g5g = true;
mci              1460 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1467 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (mci->gpm_idx == offset)
mci              1470 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->gpm_idx, offset);
mci              1471 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->query_bt = true;
mci              1472 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->need_flush_btinfo = true;
mci              1473 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->gpm_idx = 0;
mci              1478 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1497 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		offset = mci->gpm_len - 1;
mci              1498 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	else if (offset >= mci->gpm_len) {
mci              1505 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if ((offset == 0xFFFF) || (gpm_ptr == mci->gpm_idx)) {
mci              1515 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if (offset != mci->gpm_idx)
mci              1520 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		temp_index = mci->gpm_idx;
mci              1522 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if (temp_index >= mci->gpm_len)
mci              1525 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->gpm_idx++;
mci              1527 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		if (mci->gpm_idx >= mci->gpm_len)
mci              1528 drivers/net/wireless/ath/ath9k/ar9003_mci.c 			mci->gpm_idx = 0;
mci              1553 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1555 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->bt_ver_major = major;
mci              1556 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->bt_ver_minor = minor;
mci              1557 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->bt_version_known = true;
mci              1559 drivers/net/wireless/ath/ath9k/ar9003_mci.c 		mci->bt_ver_major, mci->bt_ver_minor);
mci              1565 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci              1567 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	mci->wlan_channels_update = true;
mci              1574 drivers/net/wireless/ath/ath9k/ar9003_mci.c 	if (!ah->btcoex_hw.mci.concur_tx)
mci               121 drivers/net/wireless/ath/ath9k/ar9003_mci.h #define MCI_ANT_ARCH_PA_LNA_SHARED(mci)					\
mci               122 drivers/net/wireless/ath/ath9k/ar9003_mci.h 	((MS(mci->config, ATH_MCI_CONFIG_ANT_ARCH) == ATH_MCI_ANT_ARCH_1_ANT_PA_LNA_SHARED) || \
mci               123 drivers/net/wireless/ath/ath9k/ar9003_mci.h 	 (MS(mci->config, ATH_MCI_CONFIG_ANT_ARCH) == ATH_MCI_ANT_ARCH_2_ANT_PA_LNA_SHARED))
mci               786 drivers/net/wireless/ath/ath9k/ath9k.h 	struct ath_mci_profile mci;
mci               235 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.ready = false;
mci               236 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.bt_state = 0;
mci               237 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.bt_ver_major = 3;
mci               238 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.bt_ver_minor = 0;
mci               239 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.bt_version_known = false;
mci               240 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.update_2g5g = true;
mci               241 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.is_2g = true;
mci               242 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.wlan_channels_update = false;
mci               243 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.wlan_channels[0] = 0x00000000;
mci               244 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.wlan_channels[1] = 0xffffffff;
mci               245 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.wlan_channels[2] = 0xffffffff;
mci               246 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.wlan_channels[3] = 0x7fffffff;
mci               247 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.query_bt = true;
mci               248 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.unhalt_bt_gpm = true;
mci               249 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.halted_bt_gpm = false;
mci               250 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.need_flush_btinfo = false;
mci               251 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.wlan_cal_seq = 0;
mci               252 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.wlan_cal_done = 0;
mci               253 drivers/net/wireless/ath/ath9k/btcoex.c 	ah->btcoex_hw.mci.config = (AR_SREV_9462(ah)) ? 0x2201 : 0xa4c1;
mci               277 drivers/net/wireless/ath/ath9k/btcoex.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci               293 drivers/net/wireless/ath/ath9k/btcoex.c 			 btcoex_hw->mci.stomp_ftp) ?
mci               109 drivers/net/wireless/ath/ath9k/btcoex.h 	struct ath9k_hw_mci mci;
mci               522 drivers/net/wireless/ath/ath9k/debug.c 		sc->debug.stats.istats.mci++;
mci               562 drivers/net/wireless/ath/ath9k/debug.c 	PR_IS("MCI", mci);
mci               114 drivers/net/wireless/ath/ath9k/debug.h 	u32 mci;
mci               174 drivers/net/wireless/ath/ath9k/gpio.c 	struct ath_mci_profile *mci = &btcoex->mci;
mci               179 drivers/net/wireless/ath/ath9k/gpio.c 		    (mci->num_pan || mci->num_other_acl))
mci               180 drivers/net/wireless/ath/ath9k/gpio.c 			ah->btcoex_hw.mci.stomp_ftp =
mci               183 drivers/net/wireless/ath/ath9k/gpio.c 			ah->btcoex_hw.mci.stomp_ftp = false;
mci               346 drivers/net/wireless/ath/ath9k/gpio.c 	struct ath_mci_profile *mci = &sc->btcoex.mci;
mci               349 drivers/net/wireless/ath/ath9k/gpio.c 	if ((sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_MCI) && mci->aggr_limit)
mci               350 drivers/net/wireless/ath/ath9k/gpio.c 		aggr_limit = (max_4ms_framelen * mci->aggr_limit) >> 4;
mci               394 drivers/net/wireless/ath/ath9k/gpio.c 		ath_mci_flush_profile(&sc->btcoex.mci);
mci               436 drivers/net/wireless/ath/ath9k/gpio.c 		INIT_LIST_HEAD(&sc->btcoex.mci.info);
mci               455 drivers/net/wireless/ath/ath9k/gpio.c 	struct ath_mci_profile *mci = &btcoex->mci;
mci               461 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("Total BT profiles", NUM_PROF(mci));
mci               462 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("MGMT", mci->num_mgmt);
mci               463 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("SCO", mci->num_sco);
mci               464 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("A2DP", mci->num_a2dp);
mci               465 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("HID", mci->num_hid);
mci               466 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("PAN", mci->num_pan);
mci               467 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("ACL", mci->num_other_acl);
mci               468 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("BDR", mci->num_bdr);
mci               469 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("Aggr. Limit", mci->aggr_limit);
mci               474 drivers/net/wireless/ath/ath9k/gpio.c 	ATH_DUMP_BTCOEX("Concurrent Tx", btcoex_hw->mci.concur_tx);
mci                26 drivers/net/wireless/ath/ath9k/mci.c ath_mci_find_profile(struct ath_mci_profile *mci,
mci                31 drivers/net/wireless/ath/ath9k/mci.c 	if (list_empty(&mci->info))
mci                34 drivers/net/wireless/ath/ath9k/mci.c 	list_for_each_entry(entry, &mci->info, list) {
mci                42 drivers/net/wireless/ath/ath9k/mci.c 				struct ath_mci_profile *mci,
mci                48 drivers/net/wireless/ath/ath9k/mci.c 	if ((mci->num_sco == ATH_MCI_MAX_SCO_PROFILE) &&
mci                52 drivers/net/wireless/ath/ath9k/mci.c 	if (((NUM_PROF(mci) - mci->num_sco) == ATH_MCI_MAX_ACL_PROFILE) &&
mci                61 drivers/net/wireless/ath/ath9k/mci.c 	INC_PROF(mci, info);
mci                62 drivers/net/wireless/ath/ath9k/mci.c 	list_add_tail(&entry->list, &mci->info);
mci                65 drivers/net/wireless/ath/ath9k/mci.c 			mci->voice_priority = voice_priority[info->voice_type];
mci                67 drivers/net/wireless/ath/ath9k/mci.c 			mci->voice_priority = 110;
mci                74 drivers/net/wireless/ath/ath9k/mci.c 				struct ath_mci_profile *mci,
mci                80 drivers/net/wireless/ath/ath9k/mci.c 	DEC_PROF(mci, entry);
mci                85 drivers/net/wireless/ath/ath9k/mci.c void ath_mci_flush_profile(struct ath_mci_profile *mci)
mci                89 drivers/net/wireless/ath/ath9k/mci.c 	mci->aggr_limit = 0;
mci                90 drivers/net/wireless/ath/ath9k/mci.c 	mci->num_mgmt = 0;
mci                92 drivers/net/wireless/ath/ath9k/mci.c 	if (list_empty(&mci->info))
mci                95 drivers/net/wireless/ath/ath9k/mci.c 	list_for_each_entry_safe(info, tinfo, &mci->info, list) {
mci                97 drivers/net/wireless/ath/ath9k/mci.c 		DEC_PROF(mci, info);
mci               104 drivers/net/wireless/ath/ath9k/mci.c 	struct ath_mci_profile *mci = &btcoex->mci;
mci               115 drivers/net/wireless/ath/ath9k/mci.c 	    (!mci->aggr_limit || (mci->aggr_limit > (2 * wlan_airtime))))
mci               116 drivers/net/wireless/ath/ath9k/mci.c 		mci->aggr_limit = 2 * wlan_airtime;
mci               123 drivers/net/wireless/ath/ath9k/mci.c 	struct ath_mci_profile *mci = &btcoex->mci;
mci               124 drivers/net/wireless/ath/ath9k/mci.c 	struct ath9k_hw_mci *mci_hw = &sc->sc_ah->btcoex_hw.mci;
mci               126 drivers/net/wireless/ath/ath9k/mci.c 	u32 num_profile = NUM_PROF(mci);
mci               131 drivers/net/wireless/ath/ath9k/mci.c 	mci->aggr_limit = 0;
mci               134 drivers/net/wireless/ath/ath9k/mci.c 	if (NUM_PROF(mci))
mci               137 drivers/net/wireless/ath/ath9k/mci.c 		btcoex->bt_stomp_type = mci->num_mgmt ? ATH_BTCOEX_STOMP_ALL :
mci               141 drivers/net/wireless/ath/ath9k/mci.c 		info = list_first_entry(&mci->info,
mci               144 drivers/net/wireless/ath/ath9k/mci.c 		if (mci->num_sco) {
mci               146 drivers/net/wireless/ath/ath9k/mci.c 				mci->aggr_limit = 8;
mci               148 drivers/net/wireless/ath/ath9k/mci.c 				mci->aggr_limit = 6;
mci               151 drivers/net/wireless/ath/ath9k/mci.c 				mci->aggr_limit = 6;
mci               154 drivers/net/wireless/ath/ath9k/mci.c 				mci->aggr_limit);
mci               155 drivers/net/wireless/ath/ath9k/mci.c 		} else if (mci->num_pan || mci->num_other_acl) {
mci               165 drivers/net/wireless/ath/ath9k/mci.c 		} else if (mci->num_hid) {
mci               167 drivers/net/wireless/ath/ath9k/mci.c 			mci->aggr_limit = 6;
mci               173 drivers/net/wireless/ath/ath9k/mci.c 		if (mci->num_hid == 2)
mci               175 drivers/net/wireless/ath/ath9k/mci.c 		mci->aggr_limit = 6;
mci               180 drivers/net/wireless/ath/ath9k/mci.c 		mci->aggr_limit = 4;
mci               199 drivers/net/wireless/ath/ath9k/mci.c 	btcoex->duty_cycle += (mci->num_bdr ? ATH_MCI_BDR_DUTY_CYCLE : 0);
mci               214 drivers/net/wireless/ath/ath9k/mci.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci               259 drivers/net/wireless/ath/ath9k/mci.c 	struct ath_mci_profile *mci = &btcoex->mci;
mci               263 drivers/net/wireless/ath/ath9k/mci.c 	if (mci->num_mgmt) {
mci               265 drivers/net/wireless/ath/ath9k/mci.c 		if (!mci->num_pan && !mci->num_other_acl)
mci               274 drivers/net/wireless/ath/ath9k/mci.c 		if (mci->num_sco)
mci               275 drivers/net/wireless/ath/ath9k/mci.c 			ath_mci_update_stomp_txprio(mci->voice_priority,
mci               277 drivers/net/wireless/ath/ath9k/mci.c 		if (mci->num_other_acl)
mci               279 drivers/net/wireless/ath/ath9k/mci.c 		if (mci->num_a2dp)
mci               281 drivers/net/wireless/ath/ath9k/mci.c 		if (mci->num_hid)
mci               283 drivers/net/wireless/ath/ath9k/mci.c 		if (mci->num_pan)
mci               300 drivers/net/wireless/ath/ath9k/mci.c 	struct ath_mci_profile *mci = &btcoex->mci;
mci               303 drivers/net/wireless/ath/ath9k/mci.c 	entry = ath_mci_find_profile(mci, info);
mci               314 drivers/net/wireless/ath/ath9k/mci.c 			DEC_PROF(mci, entry);
mci               315 drivers/net/wireless/ath/ath9k/mci.c 			INC_PROF(mci, info);
mci               321 drivers/net/wireless/ath/ath9k/mci.c 		if (!entry && !ath_mci_add_profile(common, mci, info))
mci               324 drivers/net/wireless/ath/ath9k/mci.c 		ath_mci_del_profile(common, mci, entry);
mci               334 drivers/net/wireless/ath/ath9k/mci.c 	struct ath_mci_profile *mci = &btcoex->mci;
mci               336 drivers/net/wireless/ath/ath9k/mci.c 	int i = 0, old_num_mgmt = mci->num_mgmt;
mci               343 drivers/net/wireless/ath/ath9k/mci.c 	if (ath_mci_find_profile(mci, &info))
mci               350 drivers/net/wireless/ath/ath9k/mci.c 		__set_bit(status->conn_handle, mci->status);
mci               352 drivers/net/wireless/ath/ath9k/mci.c 		__clear_bit(status->conn_handle, mci->status);
mci               354 drivers/net/wireless/ath/ath9k/mci.c 	mci->num_mgmt = 0;
mci               356 drivers/net/wireless/ath/ath9k/mci.c 		if (test_bit(i, mci->status))
mci               357 drivers/net/wireless/ath/ath9k/mci.c 			mci->num_mgmt++;
mci               361 drivers/net/wireless/ath/ath9k/mci.c 	if (old_num_mgmt != mci->num_mgmt)
mci               379 drivers/net/wireless/ath/ath9k/mci.c 		ath_mci_flush_profile(&sc->btcoex.mci);
mci               437 drivers/net/wireless/ath/ath9k/mci.c 	struct ath_mci_coex *mci = &sc->mci_coex;
mci               438 drivers/net/wireless/ath/ath9k/mci.c 	struct ath_mci_buf *buf = &mci->sched_buf;
mci               453 drivers/net/wireless/ath/ath9k/mci.c 	mci->sched_buf.bf_len = ATH_MCI_SCHED_BUF_SIZE;
mci               455 drivers/net/wireless/ath/ath9k/mci.c 	mci->gpm_buf.bf_len = ATH_MCI_GPM_BUF_SIZE;
mci               456 drivers/net/wireless/ath/ath9k/mci.c 	mci->gpm_buf.bf_addr = mci->sched_buf.bf_addr + mci->sched_buf.bf_len;
mci               457 drivers/net/wireless/ath/ath9k/mci.c 	mci->gpm_buf.bf_paddr = mci->sched_buf.bf_paddr + mci->sched_buf.bf_len;
mci               459 drivers/net/wireless/ath/ath9k/mci.c 	ret = ar9003_mci_setup(sc->sc_ah, mci->gpm_buf.bf_paddr,
mci               460 drivers/net/wireless/ath/ath9k/mci.c 			       mci->gpm_buf.bf_addr, (mci->gpm_buf.bf_len >> 4),
mci               461 drivers/net/wireless/ath/ath9k/mci.c 			       mci->sched_buf.bf_paddr);
mci               485 drivers/net/wireless/ath/ath9k/mci.c 	struct ath_mci_coex *mci = &sc->mci_coex;
mci               488 drivers/net/wireless/ath/ath9k/mci.c 	struct ath9k_hw_mci *mci_hw = &ah->btcoex_hw.mci;
mci               561 drivers/net/wireless/ath/ath9k/mci.c 			pgpm = mci->gpm_buf.bf_addr;
mci               645 drivers/net/wireless/ath/ath9k/mci.c 	struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
mci               687 drivers/net/wireless/ath/ath9k/mci.c 		mci->wlan_channels[i] = channelmap[i];
mci               696 drivers/net/wireless/ath/ath9k/mci.c 	struct ath9k_hw_mci *mci_hw = &sc->sc_ah->btcoex_hw.mci;
mci               729 drivers/net/wireless/ath/ath9k/mci.c 	struct ath_mci_profile *mci = &btcoex->mci;
mci               731 drivers/net/wireless/ath/ath9k/mci.c 	if (!mci->num_sco && !mci->num_a2dp)
mci               745 drivers/net/wireless/ath/ath9k/mci.c 	struct ath9k_hw_mci *mci_hw = &sc->sc_ah->btcoex_hw.mci;
mci               153 drivers/net/wireless/ath/ath9k/mci.h void ath_mci_flush_profile(struct ath_mci_profile *mci);
mci               197 drivers/s390/cio/chsc.h 	u32 mci;
mci               445 include/linux/edac.h 	struct mem_ctl_info *mci;	/* the parent */
mci               496 include/linux/edac.h 	struct mem_ctl_info *mci;	/* the parent */
mci               579 include/linux/edac.h 	int (*set_sdram_scrub_rate) (struct mem_ctl_info * mci, u32 bw);
mci               585 include/linux/edac.h 	int (*get_sdram_scrub_rate) (struct mem_ctl_info * mci);
mci               589 include/linux/edac.h 	void (*edac_check) (struct mem_ctl_info * mci);
mci               596 include/linux/edac.h 	unsigned long (*ctl_page_to_phys) (struct mem_ctl_info * mci,