Home
last modified time | relevance | path

Searched refs:csrow (Results 1 – 24 of 24) sorted by relevance

/linux/drivers/edac/
H A Dedac_mc_sysfs.c147 struct csrow_info *csrow = to_csrow(dev); in csrow_ue_count_show() local
149 return sysfs_emit(data, "%u\n", csrow->ue_count); in csrow_ue_count_show()
155 struct csrow_info *csrow = to_csrow(dev); in csrow_ce_count_show() local
157 return sysfs_emit(data, "%u\n", csrow->ce_count); in csrow_ce_count_show()
163 struct csrow_info *csrow = to_csrow(dev); in csrow_size_show() local
167 for (i = 0; i < csrow->nr_channels; i++) in csrow_size_show()
168 nr_pages += csrow->channels[i]->dimm->nr_pages; in csrow_size_show()
175 struct csrow_info *csrow = to_csrow(dev); in csrow_mem_type_show() local
177 return sysfs_emit(data, "%s\n", edac_mem_types[csrow->channels[0]->dimm->mtype]); in csrow_mem_type_show()
183 struct csrow_info *csrow = to_csrow(dev); in csrow_dev_type_show() local
[all …]
H A Dedac_mc.c86 edac_dbg(4, " channel->csrow = %p\n", chan->csrow); in edac_mc_dump_channel()
101 dimm->idx, location, dimm->csrow, dimm->cschannel); in edac_mc_dump_dimm()
108 static void edac_mc_dump_csrow(struct csrow_info *csrow) in edac_mc_dump_csrow() argument
110 edac_dbg(4, "csrow->csrow_idx = %d\n", csrow->csrow_idx); in edac_mc_dump_csrow()
111 edac_dbg(4, " csrow = %p\n", csrow); in edac_mc_dump_csrow()
112 edac_dbg(4, " csrow->first_page = 0x%lx\n", csrow->first_page); in edac_mc_dump_csrow()
113 edac_dbg(4, " csrow->last_page = 0x%lx\n", csrow->last_page); in edac_mc_dump_csrow()
114 edac_dbg(4, " csrow->page_mask = 0x%lx\n", csrow->page_mask); in edac_mc_dump_csrow()
115 edac_dbg(4, " csrow->nr_channels = %d\n", csrow->nr_channels); in edac_mc_dump_csrow()
116 edac_dbg(4, " csrow->channels = %p\n", csrow->channels); in edac_mc_dump_csrow()
[all …]
H A Dcell_edac.c37 struct csrow_info *csrow = mci->csrows[0]; in cell_edac_count_ce() local
53 csrow->first_page + pfn, offset, syndrome, in cell_edac_count_ce()
60 struct csrow_info *csrow = mci->csrows[0]; in cell_edac_count_ue() local
75 csrow->first_page + pfn, offset, 0, in cell_edac_count_ue()
130 struct csrow_info *csrow = mci->csrows[0]; in cell_edac_init_csrows() local
148 csrow->first_page = r.start >> PAGE_SHIFT; in cell_edac_init_csrows()
150 csrow->last_page = csrow->first_page + nr_pages - 1; in cell_edac_init_csrows()
152 for (j = 0; j < csrow->nr_channels; j++) { in cell_edac_init_csrows()
153 dimm = csrow->channels[j]->dimm; in cell_edac_init_csrows()
156 dimm->nr_pages = nr_pages / csrow->nr_channels; in cell_edac_init_csrows()
[all …]
H A Daspeed_edac.c94 struct csrow_info *csrow = mci->csrows[0]; in count_rec() local
119 csrow->first_page + page, offset, syndrome, in count_rec()
127 struct csrow_info *csrow = mci->csrows[0]; in count_un_rec() local
140 csrow->first_page + page, offset, syndrome, in count_un_rec()
233 struct csrow_info *csrow = mci->csrows[0]; in init_csrows() local
260 csrow->first_page = r.start >> PAGE_SHIFT; in init_csrows()
262 csrow->last_page = csrow->first_page + nr_pages - 1; in init_csrows()
267 dimm = csrow->channels[0]->dimm; in init_csrows()
270 dimm->nr_pages = nr_pages / csrow->nr_channels; in init_csrows()
273 csrow->first_page, nr_pages); in init_csrows()
H A Damd76x_edac.c189 struct csrow_info *csrow; in amd76x_init_csrows() local
195 csrow = mci->csrows[index]; in amd76x_init_csrows()
196 dimm = csrow->channels[0]->dimm; in amd76x_init_csrows()
208 csrow->first_page = mba_base >> PAGE_SHIFT; in amd76x_init_csrows()
210 csrow->last_page = csrow->first_page + dimm->nr_pages - 1; in amd76x_init_csrows()
211 csrow->page_mask = mba_mask >> PAGE_SHIFT; in amd76x_init_csrows()
H A Dpasemi_edac.c126 struct csrow_info *csrow; in pasemi_edac_init_csrows() local
132 csrow = mci->csrows[index]; in pasemi_edac_init_csrows()
133 dimm = csrow->channels[0]->dimm; in pasemi_edac_init_csrows()
167 csrow->first_page = last_page_in_mmc; in pasemi_edac_init_csrows()
168 csrow->last_page = csrow->first_page + dimm->nr_pages - 1; in pasemi_edac_init_csrows()
170 csrow->page_mask = 0; in pasemi_edac_init_csrows()
H A Dcpc925_edac.c317 struct csrow_info *csrow; in cpc925_init_csrows() local
337 csrow = mci->csrows[index]; in cpc925_init_csrows()
340 csrow->first_page = last_nr_pages; in cpc925_init_csrows()
342 csrow->last_page = csrow->first_page + nr_pages - 1; in cpc925_init_csrows()
343 last_nr_pages = csrow->last_page + 1; in cpc925_init_csrows()
345 switch (csrow->nr_channels) { in cpc925_init_csrows()
368 for (j = 0; j < csrow->nr_channels; j++) { in cpc925_init_csrows()
369 dimm = csrow->channels[j]->dimm; in cpc925_init_csrows()
370 dimm->nr_pages = nr_pages / csrow->nr_channels; in cpc925_init_csrows()
436 unsigned long *pfn, unsigned long *offset, int *csrow) in cpc925_mc_get_pfn() argument
[all …]
H A Dr82600_edac.c219 struct csrow_info *csrow; in r82600_init_csrows() local
231 csrow = mci->csrows[index]; in r82600_init_csrows()
232 dimm = csrow->channels[0]->dimm; in r82600_init_csrows()
251 csrow->first_page = row_base >> PAGE_SHIFT; in r82600_init_csrows()
252 csrow->last_page = (row_high_limit >> PAGE_SHIFT) - 1; in r82600_init_csrows()
254 dimm->nr_pages = csrow->last_page - csrow->first_page + 1; in r82600_init_csrows()
H A Di82443bxgx_edac.c188 struct csrow_info *csrow; in i82443bxgx_init_csrows() local
197 csrow = mci->csrows[index]; in i82443bxgx_init_csrows()
198 dimm = csrow->channels[0]->dimm; in i82443bxgx_init_csrows()
217 csrow->first_page = row_base >> PAGE_SHIFT; in i82443bxgx_init_csrows()
218 csrow->last_page = (row_high_limit >> PAGE_SHIFT) - 1; in i82443bxgx_init_csrows()
219 dimm->nr_pages = csrow->last_page - csrow->first_page + 1; in i82443bxgx_init_csrows()
H A Di82975x_edac.c363 struct csrow_info *csrow; in i82975x_init_csrows() local
382 csrow = mci->csrows[index]; in i82975x_init_csrows()
392 if (csrow->nr_channels > 1) in i82975x_init_csrows()
406 for (chan = 0; chan < csrow->nr_channels; chan++) { in i82975x_init_csrows()
409 dimm->nr_pages = nr_pages / csrow->nr_channels; in i82975x_init_csrows()
411 snprintf(csrow->channels[chan]->dimm->label, EDAC_MC_LABEL_LEN, "DIMM %c%d", in i82975x_init_csrows()
423 csrow->first_page = last_cumul_size; in i82975x_init_csrows()
424 csrow->last_page = cumul_size - 1; in i82975x_init_csrows()
H A Dfsl_ddr_edac.c277 struct csrow_info *csrow; in fsl_mc_check() local
318 csrow = mci->csrows[row_index]; in fsl_mc_check()
319 if ((pfn >= csrow->first_page) && (pfn <= csrow->last_page)) in fsl_mc_check()
391 struct csrow_info *csrow; in fsl_ddr_init_csrows() local
444 csrow = mci->csrows[index]; in fsl_ddr_init_csrows()
445 dimm = csrow->channels[0]->dimm; in fsl_ddr_init_csrows()
460 csrow->first_page = start; in fsl_ddr_init_csrows()
461 csrow->last_page = end; in fsl_ddr_init_csrows()
H A Di82860_edac.c148 struct csrow_info *csrow; in i82860_init_csrows() local
162 csrow = mci->csrows[index]; in i82860_init_csrows()
163 dimm = csrow->channels[0]->dimm; in i82860_init_csrows()
173 csrow->first_page = last_cumul_size; in i82860_init_csrows()
174 csrow->last_page = cumul_size - 1; in i82860_init_csrows()
H A Damd64_edac.c372 static void get_cs_base_and_mask(struct amd64_pvt *pvt, int csrow, u8 dct, in get_cs_base_and_mask() argument
379 csbase = pvt->csels[dct].csbases[csrow]; in get_cs_base_and_mask()
380 csmask = pvt->csels[dct].csmasks[csrow]; in get_cs_base_and_mask()
391 csbase = pvt->csels[dct].csbases[csrow]; in get_cs_base_and_mask()
392 csmask = pvt->csels[dct].csmasks[csrow >> 1]; in get_cs_base_and_mask()
407 csbase = pvt->csels[dct].csbases[csrow]; in get_cs_base_and_mask()
408 csmask = pvt->csels[dct].csmasks[csrow >> 1]; in get_cs_base_and_mask()
447 int csrow; in input_addr_to_csrow() local
452 for_each_chip_select(csrow, 0, pvt) { in input_addr_to_csrow()
453 if (!csrow_enabled(csrow, 0, pvt)) in input_addr_to_csrow()
[all …]
H A Di82875p_edac.c343 struct csrow_info *csrow; in i82875p_init_csrows() local
362 csrow = mci->csrows[index]; in i82875p_init_csrows()
370 csrow->first_page = last_cumul_size; in i82875p_init_csrows()
371 csrow->last_page = cumul_size - 1; in i82875p_init_csrows()
376 dimm = csrow->channels[j]->dimm; in i82875p_init_csrows()
H A De7xxx_edac.c361 struct csrow_info *csrow; in e7xxx_init_csrows() local
379 csrow = mci->csrows[index]; in e7xxx_init_csrows()
388 csrow->first_page = last_cumul_size; in e7xxx_init_csrows()
389 csrow->last_page = cumul_size - 1; in e7xxx_init_csrows()
409 dimm = csrow->channels[j]->dimm; in e7xxx_init_csrows()
H A Di3000_edac.c392 struct csrow_info *csrow = mci->csrows[i]; in i3000_probe1() local
402 csrow->first_page = last_cumul_size; in i3000_probe1()
403 csrow->last_page = cumul_size - 1; in i3000_probe1()
408 struct dimm_info *dimm = csrow->channels[j]->dimm; in i3000_probe1()
H A Di5100_edac.c411 unsigned int csrow) in i5100_csrow_to_rank() argument
415 return csrow % priv->ranksperchan; in i5100_csrow_to_rank()
420 unsigned int csrow) in i5100_csrow_to_chan() argument
424 return csrow / priv->ranksperchan; in i5100_csrow_to_chan()
646 static unsigned long i5100_npages(struct mem_ctl_info *mci, unsigned int csrow) in i5100_npages() argument
649 const unsigned int chan_rank = i5100_csrow_to_rank(mci, csrow); in i5100_npages()
650 const unsigned int chan = i5100_csrow_to_chan(mci, csrow); in i5100_npages()
H A De752x_edac.c1068 struct csrow_info *csrow; in e752x_init_csrows() local
1096 csrow = mci->csrows[remap_csrow_index(mci, index)]; in e752x_init_csrows()
1106 csrow->first_page = last_cumul_size; in e752x_init_csrows()
1107 csrow->last_page = cumul_size - 1; in e752x_init_csrows()
1125 for (i = 0; i < csrow->nr_channels; i++) { in e752x_init_csrows()
1126 struct dimm_info *dimm = csrow->channels[i]->dimm; in e752x_init_csrows()
1129 dimm->nr_pages = nr_pages / csrow->nr_channels; in e752x_init_csrows()
H A Dx38_edac.c373 struct csrow_info *csrow = mci->csrows[i]; in x38_probe1() local
383 struct dimm_info *dimm = csrow->channels[j]->dimm; in x38_probe1()
H A Damd64_edac.h397 int csrow; member
/linux/include/linux/
H A Dedac.h399 unsigned int csrow, cschannel; /* Points to the old API data */ member
424 struct csrow_info *csrow; member
/linux/Documentation/admin-guide/RAS/
H A Dmain.rst383 These csrows are allocated their csrow assignment based on the slot into
387 Memory DIMMs come single or dual "ranked". A rank is a populated csrow.
391 have just one csrow (csrow0) and csrow1 will be empty. The pattern
410 ``csrowX``, where ``X`` is the csrow index::
498 - ``size`` - Total memory managed by this csrow attribute file
501 that this csrow contains.
556 - *csrow* and *channel* - used when the memory controller
565 on this csrow. Normally, either buffered or unbuffered memory.
589 this ``X`` instance of csrow:
595 errors that have occurred on this csrow. If panic_on_ue is set
[all …]
/linux/Documentation/driver-api/
H A Dedac.rst257 │   ├── csrow 0 # UMC 0
266 │   ├── csrow 1 # UMC 1
271 │   ├── csrow 3 # UMC 3
/linux/Documentation/ABI/testing/
H A Dsysfs-devices-edac131 Description: This attribute file will display the location (csrow/channel,
139 currently on this csrow. Normally, either buffered or