• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/edac/

Lines Matching defs:csrow

130 /* Set of more default csrow<id> attribute show/store functions */
131 static ssize_t csrow_ue_count_show(struct csrow_info *csrow, char *data,
134 return sprintf(data, "%u\n", csrow->ue_count);
137 static ssize_t csrow_ce_count_show(struct csrow_info *csrow, char *data,
140 return sprintf(data, "%u\n", csrow->ce_count);
143 static ssize_t csrow_size_show(struct csrow_info *csrow, char *data,
146 return sprintf(data, "%u\n", PAGES_TO_MiB(csrow->nr_pages));
149 static ssize_t csrow_mem_type_show(struct csrow_info *csrow, char *data,
152 return sprintf(data, "%s\n", mem_types[csrow->mtype]);
155 static ssize_t csrow_dev_type_show(struct csrow_info *csrow, char *data,
158 return sprintf(data, "%s\n", dev_types[csrow->dtype]);
161 static ssize_t csrow_edac_mode_show(struct csrow_info *csrow, char *data,
164 return sprintf(data, "%s\n", edac_caps[csrow->edac_mode]);
168 static ssize_t channel_dimm_label_show(struct csrow_info *csrow,
172 if (!csrow->channels[channel].label[0])
176 csrow->channels[channel].label);
179 static ssize_t channel_dimm_label_store(struct csrow_info *csrow,
186 strncpy(csrow->channels[channel].label, data, max_size);
187 csrow->channels[channel].label[max_size] = '\0';
193 static ssize_t channel_ce_count_show(struct csrow_info *csrow,
196 return sprintf(data, "%u\n", csrow->channels[channel].ce_count);
199 /* csrow specific attribute structure */
210 /* Set of show/store higher level functions for default csrow attributes */
214 struct csrow_info *csrow = to_csrow(kobj);
218 return csrowdev_attr->show(csrow,
226 struct csrow_info *csrow = to_csrow(kobj);
230 return csrowdev_attr->store(csrow,
361 struct csrow_info *csrow, int index)
368 /* generate ..../edac/mc/mc<id>/csrow<index> */
369 memset(&csrow->kobj, 0, sizeof(csrow->kobj));
370 csrow->mci = mci; /* include container up link */
379 /* Instanstiate the csrow object */
380 err = kobject_init_and_add(&csrow->kobj, &ktype_csrow, kobj_mci,
381 "csrow%d", index);
385 /* At this point, to release a csrow kobj, one must
390 /* Create the dyanmic attribute files on this csrow,
393 for (chan = 0; chan < csrow->nr_channels; chan++) {
394 err = edac_create_channel_files(&csrow->kobj, chan);
397 kobject_put(&csrow->kobj);
401 kobject_uevent(&csrow->kobj, KOBJ_ADD);
527 struct csrow_info *csrow = &mci->csrows[csrow_idx];
529 if (!csrow->nr_pages)
532 total_pages += csrow->nr_pages;
897 struct csrow_info *csrow;
929 csrow = &mci->csrows[i];
932 if (csrow->nr_pages > 0) {
933 err = edac_create_csrow_object(mci, csrow, i);
935 debugf1("%s() failure: create csrow %d obj\n",
947 if (csrow->nr_pages > 0) {
972 /* remove all csrow kobjects */
975 debugf0("%s() unreg csrow-%d\n", __func__, i);