Home
last modified time | relevance | path

Searched refs:dimm (Results 1 – 25 of 52) sorted by relevance

123

/Linux-v4.19/drivers/edac/
Dedac_mc_sysfs.c168 nr_pages += csrow->channels[i]->dimm->nr_pages; in csrow_size_show()
177 return sprintf(data, "%s\n", edac_mem_types[csrow->channels[0]->dimm->mtype]); in csrow_mem_type_show()
185 return sprintf(data, "%s\n", dev_types[csrow->channels[0]->dimm->dtype]); in csrow_dev_type_show()
194 return sprintf(data, "%s\n", edac_caps[csrow->channels[0]->dimm->edac_mode]); in csrow_edac_mode_show()
207 if (!rank->dimm->label[0]) in channel_dimm_label_show()
210 return snprintf(data, sizeof(rank->dimm->label) + 1, "%s\n", in channel_dimm_label_show()
211 rank->dimm->label); in channel_dimm_label_show()
229 if (copy_count == 0 || copy_count >= sizeof(rank->dimm->label)) in channel_dimm_label_store()
232 strncpy(rank->dimm->label, data, copy_count); in channel_dimm_label_store()
233 rank->dimm->label[copy_count] = '\0'; in channel_dimm_label_store()
[all …]
Dghes_edac.c91 struct dimm_info *dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, in ghes_edac_dmidecode() local
99 dimm->nr_pages = MiB_TO_PAGES(32);/* Unknown */ in ghes_edac_dmidecode()
101 dimm->nr_pages = MiB_TO_PAGES(entry->extended_size); in ghes_edac_dmidecode()
104 dimm->nr_pages = MiB_TO_PAGES((entry->size & 0x7fff) << 10); in ghes_edac_dmidecode()
106 dimm->nr_pages = MiB_TO_PAGES(entry->size); in ghes_edac_dmidecode()
112 dimm->mtype = MEM_RDDR; in ghes_edac_dmidecode()
114 dimm->mtype = MEM_DDR; in ghes_edac_dmidecode()
118 dimm->mtype = MEM_RDDR2; in ghes_edac_dmidecode()
120 dimm->mtype = MEM_DDR2; in ghes_edac_dmidecode()
123 dimm->mtype = MEM_FB_DDR2; in ghes_edac_dmidecode()
[all …]
Dpasemi_edac.c139 struct dimm_info *dimm; in pasemi_edac_init_csrows() local
145 dimm = csrow->channels[0]->dimm; in pasemi_edac_init_csrows()
157 dimm->nr_pages = 128 << (20 - PAGE_SHIFT); in pasemi_edac_init_csrows()
160 dimm->nr_pages = 256 << (20 - PAGE_SHIFT); in pasemi_edac_init_csrows()
164 dimm->nr_pages = 512 << (20 - PAGE_SHIFT); in pasemi_edac_init_csrows()
167 dimm->nr_pages = 1024 << (20 - PAGE_SHIFT); in pasemi_edac_init_csrows()
170 dimm->nr_pages = 2048 << (20 - PAGE_SHIFT); in pasemi_edac_init_csrows()
180 csrow->last_page = csrow->first_page + dimm->nr_pages - 1; in pasemi_edac_init_csrows()
181 last_page_in_mmc += dimm->nr_pages; in pasemi_edac_init_csrows()
183 dimm->grain = PASEMI_EDAC_ERROR_GRAIN; in pasemi_edac_init_csrows()
[all …]
Di82860_edac.c101 struct dimm_info *dimm; in i82860_process_error_info() local
118 dimm = mci->csrows[row]->channels[0]->dimm; in i82860_process_error_info()
123 dimm->location[0], dimm->location[1], -1, in i82860_process_error_info()
128 dimm->location[0], dimm->location[1], -1, in i82860_process_error_info()
150 struct dimm_info *dimm; in i82860_init_csrows() local
164 dimm = csrow->channels[0]->dimm; in i82860_init_csrows()
176 dimm->nr_pages = cumul_size - last_cumul_size; in i82860_init_csrows()
178 dimm->grain = 1 << 12; /* I82860_EAP has 4KiB reolution */ in i82860_init_csrows()
179 dimm->mtype = MEM_RMBS; in i82860_init_csrows()
180 dimm->dtype = DEV_UNKNOWN; in i82860_init_csrows()
[all …]
Dedac_mc.c119 unsigned edac_dimm_info_location(struct dimm_info *dimm, char *buf, in edac_dimm_info_location() argument
122 struct mem_ctl_info *mci = dimm->mci; in edac_dimm_info_location()
129 dimm->location[i]); in edac_dimm_info_location()
147 edac_dbg(4, " channel->dimm = %p\n", chan->dimm); in edac_mc_dump_channel()
150 static void edac_mc_dump_dimm(struct dimm_info *dimm, int number) in edac_mc_dump_dimm() argument
154 edac_dimm_info_location(dimm, location, sizeof(location)); in edac_mc_dump_dimm()
157 dimm->mci->csbased ? "rank" : "dimm", in edac_mc_dump_dimm()
158 number, location, dimm->csrow, dimm->cschannel); in edac_mc_dump_dimm()
159 edac_dbg(4, " dimm = %p\n", dimm); in edac_mc_dump_dimm()
160 edac_dbg(4, " dimm->label = '%s'\n", dimm->label); in edac_mc_dump_dimm()
[all …]
Dti_edac.c132 struct dimm_info *dimm; in ti_edac_setup_dimm() local
138 dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers, 0, 0, 0); in ti_edac_setup_dimm()
149 dimm->dtype = DEV_X16; in ti_edac_setup_dimm()
152 dimm->dtype = DEV_X32; in ti_edac_setup_dimm()
166 dimm->dtype = DEV_X64; in ti_edac_setup_dimm()
170 dimm->dtype = DEV_X32; in ti_edac_setup_dimm()
174 dimm->dtype = DEV_X16; in ti_edac_setup_dimm()
181 dimm->nr_pages = memsize >> PAGE_SHIFT; in ti_edac_setup_dimm()
182 dimm->grain = 4; in ti_edac_setup_dimm()
184 dimm->mtype = MEM_DDR2; in ti_edac_setup_dimm()
[all …]
Dskx_edac.c109 int dimm; member
351 static int get_dimm_info(u32 mtr, u32 amap, struct dimm_info *dimm, in get_dimm_info() argument
377 dimm->nr_pages = npages; in get_dimm_info()
378 dimm->grain = 32; in get_dimm_info()
379 dimm->dtype = get_width(mtr); in get_dimm_info()
380 dimm->mtype = MEM_DDR4; in get_dimm_info()
381 dimm->edac_mode = EDAC_SECDED; /* likely better than this */ in get_dimm_info()
382 snprintf(dimm->label, sizeof(dimm->label), "CPU_SrcID#%u_MC#%u_Chan#%u_DIMM#%u", in get_dimm_info()
388 static int get_nvdimm_info(struct dimm_info *dimm, struct skx_imc *imc, in get_nvdimm_info() argument
421 dimm->nr_pages = size >> PAGE_SHIFT; in get_nvdimm_info()
[all …]
Damd76x_edac.c191 struct dimm_info *dimm; in amd76x_init_csrows() local
197 dimm = csrow->channels[0]->dimm; in amd76x_init_csrows()
210 dimm->nr_pages = (mba_mask + 1) >> PAGE_SHIFT; in amd76x_init_csrows()
211 csrow->last_page = csrow->first_page + dimm->nr_pages - 1; in amd76x_init_csrows()
213 dimm->grain = dimm->nr_pages << PAGE_SHIFT; in amd76x_init_csrows()
214 dimm->mtype = MEM_RDDR; in amd76x_init_csrows()
215 dimm->dtype = ((dms >> index) & 0x1) ? DEV_X4 : DEV_UNKNOWN; in amd76x_init_csrows()
216 dimm->edac_mode = edac_mode; in amd76x_init_csrows()
Die31200_edac.c461 struct dimm_info *dimm; in ie31200_probe1() local
470 dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, in ie31200_probe1()
473 dimm->nr_pages = nr_pages; in ie31200_probe1()
475 dimm->grain = 8; /* just a guess */ in ie31200_probe1()
477 dimm->mtype = MEM_DDR4; in ie31200_probe1()
479 dimm->mtype = MEM_DDR3; in ie31200_probe1()
480 dimm->dtype = DEV_UNKNOWN; in ie31200_probe1()
481 dimm->edac_mode = EDAC_UNKNOWN; in ie31200_probe1()
483 dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, in ie31200_probe1()
485 dimm->nr_pages = nr_pages; in ie31200_probe1()
[all …]
Dr82600_edac.c221 struct dimm_info *dimm; in r82600_init_csrows() local
233 dimm = csrow->channels[0]->dimm; in r82600_init_csrows()
255 dimm->nr_pages = csrow->last_page - csrow->first_page + 1; in r82600_init_csrows()
258 dimm->grain = 1 << 14; in r82600_init_csrows()
259 dimm->mtype = reg_sdram ? MEM_RDDR : MEM_DDR; in r82600_init_csrows()
261 dimm->dtype = DEV_UNKNOWN; in r82600_init_csrows()
264 dimm->edac_mode = ecc_on ? EDAC_SECDED : EDAC_NONE; in r82600_init_csrows()
Dhighbank_mc_edac.c162 struct dimm_info *dimm; in highbank_mc_probe() local
232 dimm = *mci->dimms; in highbank_mc_probe()
233 dimm->nr_pages = (~0UL >> PAGE_SHIFT) + 1; in highbank_mc_probe()
234 dimm->grain = 8; in highbank_mc_probe()
235 dimm->dtype = DEV_X8; in highbank_mc_probe()
236 dimm->mtype = MEM_DDR3; in highbank_mc_probe()
237 dimm->edac_mode = EDAC_SECDED; in highbank_mc_probe()
Di5400_edac.c861 static int determine_mtr(struct i5400_pvt *pvt, int dimm, int channel) in determine_mtr() argument
869 n = dimm; in determine_mtr()
873 dimm); in determine_mtr()
918 static void handle_channel(struct i5400_pvt *pvt, int dimm, int channel, in handle_channel() argument
925 mtr = determine_mtr(pvt, dimm, channel); in handle_channel()
930 if (amb_present_reg & (1 << dimm)) { in handle_channel()
959 int dimm, max_dimms; in calculate_dimm_size() local
979 for (dimm = max_dimms - 1; dimm >= 0; dimm--) { in calculate_dimm_size()
983 if (dimm & 0x1) { in calculate_dimm_size()
992 n = snprintf(p, space, "dimm %2d ", dimm); in calculate_dimm_size()
[all …]
Di82443bxgx_edac.c190 struct dimm_info *dimm; in i82443bxgx_init_csrows() local
199 dimm = csrow->channels[0]->dimm; in i82443bxgx_init_csrows()
220 dimm->nr_pages = csrow->last_page - csrow->first_page + 1; in i82443bxgx_init_csrows()
222 dimm->grain = 1 << 12; in i82443bxgx_init_csrows()
223 dimm->mtype = mtype; in i82443bxgx_init_csrows()
225 dimm->dtype = DEV_UNKNOWN; in i82443bxgx_init_csrows()
227 dimm->edac_mode = edac_mode; in i82443bxgx_init_csrows()
Dsynopsys_edac.c363 struct dimm_info *dimm; in synps_edac_init_csrows() local
373 dimm = csi->channels[j]->dimm; in synps_edac_init_csrows()
374 dimm->edac_mode = EDAC_FLAG_SECDED; in synps_edac_init_csrows()
375 dimm->mtype = synps_edac_get_mtype(priv->baseaddr); in synps_edac_init_csrows()
376 dimm->nr_pages = (size >> PAGE_SHIFT) / csi->nr_channels; in synps_edac_init_csrows()
377 dimm->grain = SYNPS_EDAC_ERR_GRAIN; in synps_edac_init_csrows()
378 dimm->dtype = synps_edac_get_dtype(priv->baseaddr); in synps_edac_init_csrows()
Di82975x_edac.c313 (1 << mci->csrows[row]->channels[chan]->dimm->grain)); in i82975x_process_error_info()
377 struct dimm_info *dimm; in i82975x_init_csrows() local
418 dimm = mci->csrows[index]->channels[chan]->dimm; in i82975x_init_csrows()
420 dimm->nr_pages = nr_pages / csrow->nr_channels; in i82975x_init_csrows()
422 snprintf(csrow->channels[chan]->dimm->label, EDAC_MC_LABEL_LEN, "DIMM %c%d", in i82975x_init_csrows()
425 dimm->grain = 1 << 7; /* 128Byte cache-line resolution */ in i82975x_init_csrows()
426 dimm->dtype = i82975x_dram_type(mch_window, index); in i82975x_init_csrows()
427 dimm->mtype = MEM_DDR2; /* I82975x supports only DDR2 */ in i82975x_init_csrows()
428 dimm->edac_mode = EDAC_SECDED; /* only supported */ in i82975x_init_csrows()
Di82875p_edac.c345 struct dimm_info *dimm; in i82875p_init_csrows() local
377 dimm = csrow->channels[j]->dimm; in i82875p_init_csrows()
379 dimm->nr_pages = nr_pages / nr_chans; in i82875p_init_csrows()
380 dimm->grain = 1 << 12; /* I82875P_EAP has 4KiB reolution */ in i82875p_init_csrows()
381 dimm->mtype = MEM_DDR; in i82875p_init_csrows()
382 dimm->dtype = DEV_UNKNOWN; in i82875p_init_csrows()
383 dimm->edac_mode = drc_ddim ? EDAC_SECDED : EDAC_NONE; in i82875p_init_csrows()
Dpnd2_edac.c61 int dimm; member
991 daddr->dimm = 0; in apl_pmi2mem()
1011 daddr->dimm = (daddr->rank >= 2) ^ drp[pmiidx].dimmflip; in dnv_pmi2mem()
1141 addr, pmiaddr, daddr->chan, daddr->dimm, daddr->rank, daddr->bank, daddr->row, daddr->col); in get_memory_error_data()
1211 errcode, daddr->chan, daddr->dimm, daddr->rank, daddr->row, daddr->bank, daddr->col); in pnd2_mce_output_error()
1217 m->addr & ~PAGE_MASK, 0, daddr->chan, daddr->dimm, -1, optype, msg); in pnd2_mce_output_error()
1228 struct dimm_info *dimm; in apl_get_dimm_config() local
1237 dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers, i, 0, 0); in apl_get_dimm_config()
1238 if (!dimm) { in apl_get_dimm_config()
1259 dimm->nr_pages = MiB_TO_PAGES(capacity >> (20 - 3)); in apl_get_dimm_config()
[all …]
Dcell_edac.c131 struct dimm_info *dimm; in cell_edac_init_csrows() local
153 dimm = csrow->channels[j]->dimm; in cell_edac_init_csrows()
154 dimm->mtype = MEM_XDR; in cell_edac_init_csrows()
155 dimm->edac_mode = EDAC_SECDED; in cell_edac_init_csrows()
156 dimm->nr_pages = nr_pages / csrow->nr_channels; in cell_edac_init_csrows()
Dx38_edac.c384 struct dimm_info *dimm = csrow->channels[j]->dimm; in x38_probe1() local
386 dimm->nr_pages = nr_pages / x38_channel_num; in x38_probe1()
387 dimm->grain = nr_pages << PAGE_SHIFT; in x38_probe1()
388 dimm->mtype = MEM_DDR2; in x38_probe1()
389 dimm->dtype = DEV_UNKNOWN; in x38_probe1()
390 dimm->edac_mode = EDAC_UNKNOWN; in x38_probe1()
Di3000_edac.c409 struct dimm_info *dimm = csrow->channels[j]->dimm; in i3000_probe1() local
411 dimm->nr_pages = nr_pages / nr_channels; in i3000_probe1()
412 dimm->grain = I3000_DEAP_GRAIN; in i3000_probe1()
413 dimm->mtype = MEM_DDR2; in i3000_probe1()
414 dimm->dtype = DEV_UNKNOWN; in i3000_probe1()
415 dimm->edac_mode = EDAC_UNKNOWN; in i3000_probe1()
De7xxx_edac.c363 struct dimm_info *dimm; in e7xxx_init_csrows() local
410 dimm = csrow->channels[j]->dimm; in e7xxx_init_csrows()
412 dimm->nr_pages = nr_pages / (drc_chan + 1); in e7xxx_init_csrows()
413 dimm->grain = 1 << 12; /* 4KiB - resolution of CELOG */ in e7xxx_init_csrows()
414 dimm->mtype = MEM_RDDR; /* only one type supported */ in e7xxx_init_csrows()
415 dimm->dtype = mem_dev ? DEV_X4 : DEV_X8; in e7xxx_init_csrows()
416 dimm->edac_mode = edac_mode; in e7xxx_init_csrows()
Dfsl_ddr_edac.c391 struct dimm_info *dimm; in fsl_ddr_init_csrows() local
444 dimm = csrow->channels[0]->dimm; in fsl_ddr_init_csrows()
462 dimm->nr_pages = end + 1 - start; in fsl_ddr_init_csrows()
463 dimm->grain = 8; in fsl_ddr_init_csrows()
464 dimm->mtype = mtype; in fsl_ddr_init_csrows()
465 dimm->dtype = DEV_UNKNOWN; in fsl_ddr_init_csrows()
467 dimm->dtype = DEV_X32; in fsl_ddr_init_csrows()
468 dimm->edac_mode = EDAC_SECDED; in fsl_ddr_init_csrows()
Di7300_edac.c590 struct dimm_info *dimm) in decode_mtr() argument
651 dimm->nr_pages = MiB_TO_PAGES(dinfo->megabytes); in decode_mtr()
652 dimm->grain = 8; in decode_mtr()
653 dimm->mtype = MEM_FB_DDR2; in decode_mtr()
655 dimm->edac_mode = EDAC_SECDED; in decode_mtr()
660 dimm->edac_mode = EDAC_S8ECD8ED; in decode_mtr()
662 dimm->edac_mode = EDAC_S4ECD4ED; in decode_mtr()
671 dimm->dtype = DEV_X8; in decode_mtr()
673 dimm->dtype = DEV_X4; in decode_mtr()
754 struct dimm_info *dimm; in i7300_init_csrows() local
[all …]
/Linux-v4.19/Documentation/ABI/testing/
Dsysfs-devices-edac86 What: /sys/devices/system/edac/mc/mc*/(dimm|rank)*/size
90 Description: This attribute file will display the size of dimm or rank.
91 For dimm*/size, this is the size, in MB of the DIMM memory
94 is also the total size of the dimm. On dual rank (2R) memories,
97 What: /sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_dev_type
104 What: /sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_edac_mode
112 What: /sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_label
127 What: /sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_location
132 branch/channel/slot or channel/slot) of the dimm or rank.
134 What: /sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_mem_type
[all …]
/Linux-v4.19/arch/sparc/kernel/
Dchmc.c324 int dimm; in jbusmc_print_dimm() local
329 for (dimm = 0; dimm < JB_NUM_DIMMS_PER_GROUP; dimm++) { in jbusmc_print_dimm()
331 prop->dimm_labels[first_dimm + dimm]); in jbusmc_print_dimm()
570 int dimm; in chmc_print_dimm() local
575 for (dimm = 0; dimm < CHMCTRL_NDIMMS; dimm++) { in chmc_print_dimm()
577 prop->dimm_labels[first_dimm + dimm]); in chmc_print_dimm()

123