• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/drivers/edac/

Lines Matching refs:csrow

196 /* csrow<id> control files */
404 /* Instanstiate the csrow object */
616 /* Set of more default csrow<id> attribute show/store functions */
617 static ssize_t csrow_ue_count_show(struct csrow_info *csrow, char *data, int private)
619 return sprintf(data,"%u\n", csrow->ue_count);
622 static ssize_t csrow_ce_count_show(struct csrow_info *csrow, char *data, int private)
624 return sprintf(data,"%u\n", csrow->ce_count);
627 static ssize_t csrow_size_show(struct csrow_info *csrow, char *data, int private)
629 return sprintf(data,"%u\n", PAGES_TO_MiB(csrow->nr_pages));
632 static ssize_t csrow_mem_type_show(struct csrow_info *csrow, char *data, int private)
634 return sprintf(data,"%s\n", mem_types[csrow->mtype]);
637 static ssize_t csrow_dev_type_show(struct csrow_info *csrow, char *data, int private)
639 return sprintf(data,"%s\n", dev_types[csrow->dtype]);
642 static ssize_t csrow_edac_mode_show(struct csrow_info *csrow, char *data, int private)
644 return sprintf(data,"%s\n", edac_caps[csrow->edac_mode]);
648 static ssize_t channel_dimm_label_show(struct csrow_info *csrow,
652 csrow->channels[channel].label);
655 static ssize_t channel_dimm_label_store(struct csrow_info *csrow,
663 strncpy(csrow->channels[channel].label, data, max_size);
664 csrow->channels[channel].label[max_size] = '\0';
670 static ssize_t channel_ce_count_show(struct csrow_info *csrow,
674 return sprintf(data, "%u\n", csrow->channels[channel].ce_count);
677 /* csrow specific attribute structure */
688 /* Set of show/store higher level functions for default csrow attributes */
693 struct csrow_info *csrow = to_csrow(kobj);
697 return csrowdev_attr->show(csrow,
706 struct csrow_info *csrow = to_csrow(kobj);
710 return csrowdev_attr->store(csrow,
867 struct csrow_info *csrow,
873 memset(&csrow->kobj, 0, sizeof(csrow->kobj));
875 /* generate ..../edac/mc/mc<id>/csrow<index> */
877 csrow->kobj.parent = edac_mci_kobj;
878 csrow->kobj.ktype = &ktype_csrow;
880 /* name this instance of csrow<id> */
881 err = kobject_set_name(&csrow->kobj,"csrow%d",index);
885 /* Instanstiate the csrow object */
886 err = kobject_register(&csrow->kobj);
888 /* Create the dyanmic attribute files on this csrow,
891 for (chan = 0; chan < csrow->nr_channels; chan++) {
892 err = edac_create_channel_files(&csrow->kobj,chan);
1012 struct csrow_info *csrow = &mci->csrows[csrow_idx];
1014 if (!csrow->nr_pages)
1017 total_pages += csrow->nr_pages;
1130 struct csrow_info *csrow;
1160 csrow = &mci->csrows[i];
1163 if (csrow->nr_pages > 0) {
1164 err = edac_create_csrow_object(edac_mci_kobj,csrow,i);
1175 if (csrow->nr_pages > 0) {
1176 init_completion(&csrow->kobj_complete);
1178 wait_for_completion(&csrow->kobj_complete);
1198 /* remove all csrow kobjects */
1223 debugf4("\tchannel->csrow = %p\n\n", chan->csrow);
1227 void edac_mc_dump_csrow(struct csrow_info *csrow)
1229 debugf4("\tcsrow = %p\n", csrow);
1230 debugf4("\tcsrow->csrow_idx = %d\n", csrow->csrow_idx);
1232 csrow->first_page);
1233 debugf4("\tcsrow->last_page = 0x%lx\n", csrow->last_page);
1234 debugf4("\tcsrow->page_mask = 0x%lx\n", csrow->page_mask);
1235 debugf4("\tcsrow->nr_pages = 0x%x\n", csrow->nr_pages);
1237 csrow->nr_channels);
1238 debugf4("\tcsrow->channels = %p\n", csrow->channels);
1239 debugf4("\tcsrow->mci = %p\n\n", csrow->mci);
1315 struct csrow_info *csi, *csrow;
1349 csrow = &csi[row];
1350 csrow->csrow_idx = row;
1351 csrow->mci = mci;
1352 csrow->nr_channels = nr_chans;
1354 csrow->channels = chp;
1359 chan->csrow = csrow;
1584 struct csrow_info *csrow = &csrows[i];
1586 if (csrow->nr_pages == 0)
1591 csrow->first_page, page, csrow->last_page,
1592 csrow->page_mask);
1594 if ((page >= csrow->first_page) &&
1595 (page <= csrow->last_page) &&
1596 ((page & csrow->page_mask) ==
1597 (csrow->first_page & csrow->page_mask))) {
1753 unsigned int csrow,
1763 if (csrow >= mci->nr_csrows) {
1767 csrow, mci->nr_csrows);
1772 if (channela >= mci->csrows[csrow].nr_channels) {
1777 channela, mci->csrows[csrow].nr_channels);
1782 if (channelb >= mci->csrows[csrow].nr_channels) {
1787 channelb, mci->csrows[csrow].nr_channels);
1793 mci->csrows[csrow].ue_count++;
1797 mci->csrows[csrow].channels[channela].label);
1800 mci->csrows[csrow].channels[channelb].label);
1805 "labels \"%s\": %s\n", csrow, channela, channelb,
1810 "labels \"%s\": %s\n", csrow, channela,
1820 unsigned int csrow,
1826 if (csrow >= mci->nr_csrows) {
1830 csrow, mci->nr_csrows);
1834 if (channel >= mci->csrows[csrow].nr_channels) {
1838 channel, mci->csrows[csrow].nr_channels);
1846 csrow, channel,
1847 mci->csrows[csrow].channels[channel].label,
1851 mci->csrows[csrow].ce_count++;
1852 mci->csrows[csrow].channels[channel].ce_count++;