Lines Matching refs:i7core_dev
242 struct i7core_dev { struct
257 struct i7core_dev *i7core_dev; argument
453 static struct i7core_dev *get_i7core_dev(u8 socket) in get_i7core_dev()
455 struct i7core_dev *i7core_dev; in get_i7core_dev() local
457 list_for_each_entry(i7core_dev, &i7core_edac_list, list) { in get_i7core_dev()
458 if (i7core_dev->socket == socket) in get_i7core_dev()
459 return i7core_dev; in get_i7core_dev()
465 static struct i7core_dev *alloc_i7core_dev(u8 socket, in alloc_i7core_dev()
468 struct i7core_dev *i7core_dev; in alloc_i7core_dev() local
470 i7core_dev = kzalloc(sizeof(*i7core_dev), GFP_KERNEL); in alloc_i7core_dev()
471 if (!i7core_dev) in alloc_i7core_dev()
474 i7core_dev->pdev = kzalloc(sizeof(*i7core_dev->pdev) * table->n_devs, in alloc_i7core_dev()
476 if (!i7core_dev->pdev) { in alloc_i7core_dev()
477 kfree(i7core_dev); in alloc_i7core_dev()
481 i7core_dev->socket = socket; in alloc_i7core_dev()
482 i7core_dev->n_devs = table->n_devs; in alloc_i7core_dev()
483 list_add_tail(&i7core_dev->list, &i7core_edac_list); in alloc_i7core_dev()
485 return i7core_dev; in alloc_i7core_dev()
488 static void free_i7core_dev(struct i7core_dev *i7core_dev) in free_i7core_dev() argument
490 list_del(&i7core_dev->list); in free_i7core_dev()
491 kfree(i7core_dev->pdev); in free_i7core_dev()
492 kfree(i7core_dev); in free_i7core_dev()
520 pvt->i7core_dev->socket, pvt->info.mc_control, in get_dimm_config()
635 pvt->i7core_dev->socket, i, j); in get_dimm_config()
1168 ATTRIBUTE_GROUPS(i7core_dev);
1239 static void i7core_put_devices(struct i7core_dev *i7core_dev) in i7core_put_devices() argument
1244 for (i = 0; i < i7core_dev->n_devs; i++) { in i7core_put_devices()
1245 struct pci_dev *pdev = i7core_dev->pdev[i]; in i7core_put_devices()
1257 struct i7core_dev *i7core_dev, *tmp; in i7core_put_all_devices() local
1259 list_for_each_entry_safe(i7core_dev, tmp, &i7core_edac_list, list) { in i7core_put_all_devices()
1260 i7core_put_devices(i7core_dev); in i7core_put_all_devices()
1261 free_i7core_dev(i7core_dev); in i7core_put_all_devices()
1314 struct i7core_dev *i7core_dev; in i7core_get_onedevice() local
1367 i7core_dev = get_i7core_dev(socket); in i7core_get_onedevice()
1368 if (!i7core_dev) { in i7core_get_onedevice()
1369 i7core_dev = alloc_i7core_dev(socket, table); in i7core_get_onedevice()
1370 if (!i7core_dev) { in i7core_get_onedevice()
1376 if (i7core_dev->pdev[devno]) { in i7core_get_onedevice()
1386 i7core_dev->pdev[devno] = pdev; in i7core_get_onedevice()
1458 struct i7core_dev *i7core_dev) in mci_bind_devs() argument
1467 for (i = 0; i < i7core_dev->n_devs; i++) { in mci_bind_devs()
1468 pdev = i7core_dev->pdev[i]; in mci_bind_devs()
1517 pdev, i7core_dev->socket); in mci_bind_devs()
1863 struct i7core_dev *i7_dev; in i7core_mce_check_error()
2141 &pvt->i7core_dev->pdev[0]->dev, in i7core_pci_ctl_create()
2155 pvt->i7core_dev->socket); in i7core_pci_ctl_release()
2159 static void i7core_unregister_mci(struct i7core_dev *i7core_dev) in i7core_unregister_mci() argument
2161 struct mem_ctl_info *mci = i7core_dev->mci; in i7core_unregister_mci()
2165 edac_dbg(0, "MC: dev = %p\n", &i7core_dev->pdev[0]->dev); in i7core_unregister_mci()
2173 edac_dbg(0, "MC: mci = %p, dev = %p\n", mci, &i7core_dev->pdev[0]->dev); in i7core_unregister_mci()
2189 i7core_dev->mci = NULL; in i7core_unregister_mci()
2192 static int i7core_register_mci(struct i7core_dev *i7core_dev) in i7core_register_mci() argument
2207 mci = edac_mc_alloc(i7core_dev->socket, ARRAY_SIZE(layers), layers, in i7core_register_mci()
2212 edac_dbg(0, "MC: mci = %p, dev = %p\n", mci, &i7core_dev->pdev[0]->dev); in i7core_register_mci()
2218 pvt->i7core_dev = i7core_dev; in i7core_register_mci()
2219 i7core_dev->mci = mci; in i7core_register_mci()
2232 i7core_dev->socket); in i7core_register_mci()
2233 mci->dev_name = pci_name(i7core_dev->pdev[0]); in i7core_register_mci()
2237 rc = mci_bind_devs(mci, i7core_dev); in i7core_register_mci()
2245 mci->pdev = &i7core_dev->pdev[0]->dev; in i7core_register_mci()
2289 i7core_dev->mci = NULL; in i7core_register_mci()
2304 struct i7core_dev *i7core_dev; in i7core_probe() local
2322 list_for_each_entry(i7core_dev, &i7core_edac_list, list) { in i7core_probe()
2324 rc = i7core_register_mci(i7core_dev); in i7core_probe()
2350 list_for_each_entry(i7core_dev, &i7core_edac_list, list) in i7core_probe()
2351 i7core_unregister_mci(i7core_dev); in i7core_probe()
2365 struct i7core_dev *i7core_dev; in i7core_remove() local
2384 list_for_each_entry(i7core_dev, &i7core_edac_list, list) in i7core_remove()
2385 i7core_unregister_mci(i7core_dev); in i7core_remove()