Lines Matching refs:i7core_dev

242 struct i7core_dev {  struct
257 struct i7core_dev *i7core_dev; argument
443 static struct i7core_dev *get_i7core_dev(u8 socket) in get_i7core_dev()
445 struct i7core_dev *i7core_dev; in get_i7core_dev() local
447 list_for_each_entry(i7core_dev, &i7core_edac_list, list) { in get_i7core_dev()
448 if (i7core_dev->socket == socket) in get_i7core_dev()
449 return i7core_dev; in get_i7core_dev()
455 static struct i7core_dev *alloc_i7core_dev(u8 socket, in alloc_i7core_dev()
458 struct i7core_dev *i7core_dev; in alloc_i7core_dev() local
460 i7core_dev = kzalloc(sizeof(*i7core_dev), GFP_KERNEL); in alloc_i7core_dev()
461 if (!i7core_dev) in alloc_i7core_dev()
464 i7core_dev->pdev = kcalloc(table->n_devs, sizeof(*i7core_dev->pdev), in alloc_i7core_dev()
466 if (!i7core_dev->pdev) { in alloc_i7core_dev()
467 kfree(i7core_dev); in alloc_i7core_dev()
471 i7core_dev->socket = socket; in alloc_i7core_dev()
472 i7core_dev->n_devs = table->n_devs; in alloc_i7core_dev()
473 list_add_tail(&i7core_dev->list, &i7core_edac_list); in alloc_i7core_dev()
475 return i7core_dev; in alloc_i7core_dev()
478 static void free_i7core_dev(struct i7core_dev *i7core_dev) in free_i7core_dev() argument
480 list_del(&i7core_dev->list); in free_i7core_dev()
481 kfree(i7core_dev->pdev); in free_i7core_dev()
482 kfree(i7core_dev); in free_i7core_dev()
510 pvt->i7core_dev->socket, pvt->info.mc_control, in get_dimm_config()
625 pvt->i7core_dev->socket, i, j); in get_dimm_config()
1158 ATTRIBUTE_GROUPS(i7core_dev);
1237 static void i7core_put_devices(struct i7core_dev *i7core_dev) in i7core_put_devices() argument
1242 for (i = 0; i < i7core_dev->n_devs; i++) { in i7core_put_devices()
1243 struct pci_dev *pdev = i7core_dev->pdev[i]; in i7core_put_devices()
1255 struct i7core_dev *i7core_dev, *tmp; in i7core_put_all_devices() local
1257 list_for_each_entry_safe(i7core_dev, tmp, &i7core_edac_list, list) { in i7core_put_all_devices()
1258 i7core_put_devices(i7core_dev); in i7core_put_all_devices()
1259 free_i7core_dev(i7core_dev); in i7core_put_all_devices()
1312 struct i7core_dev *i7core_dev; in i7core_get_onedevice() local
1365 i7core_dev = get_i7core_dev(socket); in i7core_get_onedevice()
1366 if (!i7core_dev) { in i7core_get_onedevice()
1367 i7core_dev = alloc_i7core_dev(socket, table); in i7core_get_onedevice()
1368 if (!i7core_dev) { in i7core_get_onedevice()
1374 if (i7core_dev->pdev[devno]) { in i7core_get_onedevice()
1384 i7core_dev->pdev[devno] = pdev; in i7core_get_onedevice()
1456 struct i7core_dev *i7core_dev) in mci_bind_devs() argument
1465 for (i = 0; i < i7core_dev->n_devs; i++) { in mci_bind_devs()
1466 pdev = i7core_dev->pdev[i]; in mci_bind_devs()
1515 pdev, i7core_dev->socket); in mci_bind_devs()
1816 struct i7core_dev *i7_dev; in i7core_mce_check_error()
2081 &pvt->i7core_dev->pdev[0]->dev, in i7core_pci_ctl_create()
2095 pvt->i7core_dev->socket); in i7core_pci_ctl_release()
2099 static void i7core_unregister_mci(struct i7core_dev *i7core_dev) in i7core_unregister_mci() argument
2101 struct mem_ctl_info *mci = i7core_dev->mci; in i7core_unregister_mci()
2105 edac_dbg(0, "MC: dev = %p\n", &i7core_dev->pdev[0]->dev); in i7core_unregister_mci()
2113 edac_dbg(0, "MC: mci = %p, dev = %p\n", mci, &i7core_dev->pdev[0]->dev); in i7core_unregister_mci()
2129 i7core_dev->mci = NULL; in i7core_unregister_mci()
2132 static int i7core_register_mci(struct i7core_dev *i7core_dev) in i7core_register_mci() argument
2147 mci = edac_mc_alloc(i7core_dev->socket, ARRAY_SIZE(layers), layers, in i7core_register_mci()
2152 edac_dbg(0, "MC: mci = %p, dev = %p\n", mci, &i7core_dev->pdev[0]->dev); in i7core_register_mci()
2158 pvt->i7core_dev = i7core_dev; in i7core_register_mci()
2159 i7core_dev->mci = mci; in i7core_register_mci()
2171 mci->ctl_name = kasprintf(GFP_KERNEL, "i7 core #%d", i7core_dev->socket); in i7core_register_mci()
2177 mci->dev_name = pci_name(i7core_dev->pdev[0]); in i7core_register_mci()
2181 rc = mci_bind_devs(mci, i7core_dev); in i7core_register_mci()
2189 mci->pdev = &i7core_dev->pdev[0]->dev; in i7core_register_mci()
2233 i7core_dev->mci = NULL; in i7core_register_mci()
2248 struct i7core_dev *i7core_dev; in i7core_probe() local
2266 list_for_each_entry(i7core_dev, &i7core_edac_list, list) { in i7core_probe()
2268 rc = i7core_register_mci(i7core_dev); in i7core_probe()
2294 list_for_each_entry(i7core_dev, &i7core_edac_list, list) in i7core_probe()
2295 i7core_unregister_mci(i7core_dev); in i7core_probe()
2309 struct i7core_dev *i7core_dev; in i7core_remove() local
2328 list_for_each_entry(i7core_dev, &i7core_edac_list, list) in i7core_remove()
2329 i7core_unregister_mci(i7core_dev); in i7core_remove()