• 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:mci

28 #define amd76x_mc_printk(mci, level, fmt, arg...) \
29 edac_mc_chipset_printk(mci, level, "amd76x", fmt, ##arg)
98 * @mci: Memory controller
104 static void amd76x_get_error_info(struct mem_ctl_info *mci,
109 pdev = to_pci_dev(mci->dev);
124 * @mci: Memory controller
132 static int amd76x_process_error_info(struct mem_ctl_info *mci,
149 edac_mc_handle_ue(mci, mci->csrows[row].first_page, 0,
150 row, mci->ctl_name);
162 edac_mc_handle_ce(mci, mci->csrows[row].first_page, 0,
163 0, row, 0, mci->ctl_name);
172 * @mci: Memory controller
177 static void amd76x_check(struct mem_ctl_info *mci)
181 amd76x_get_error_info(mci, &info);
182 amd76x_process_error_info(mci, &info, 1);
185 static void amd76x_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev,
192 for (index = 0; index < mci->nr_csrows; index++) {
193 csrow = &mci->csrows[index];
233 struct mem_ctl_info *mci = NULL;
241 mci = edac_mc_alloc(0, AMD76X_NR_CSROWS, AMD76X_NR_CHANS, 0);
243 if (mci == NULL) {
247 debugf0("%s(): mci = %p\n", __func__, mci);
248 mci->dev = &pdev->dev;
249 mci->mtype_cap = MEM_FLAG_RDDR;
250 mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED;
251 mci->edac_cap = ems_mode ?
253 mci->mod_name = EDAC_MOD_STR;
254 mci->mod_ver = AMD76X_REVISION;
255 mci->ctl_name = amd76x_devs[dev_idx].ctl_name;
256 mci->dev_name = pci_name(pdev);
257 mci->edac_check = amd76x_check;
258 mci->ctl_page_to_phys = NULL;
260 amd76x_init_csrows(mci, pdev, ems_modes[ems_mode]);
261 amd76x_get_error_info(mci, &discard); /* clear counters */
266 if (edac_mc_add_mc(mci)) {
287 edac_mc_free(mci);
305 * Called when the driver is unloaded. Find the matching mci
306 * structure for the device then delete the mci and free the
311 struct mem_ctl_info *mci;
318 if ((mci = edac_mc_del_mc(&pdev->dev)) == NULL)
321 edac_mc_free(mci);