Lines Matching +full:module +full:- +full:instance
9 #include <linux/module.h>
23 static int edac_pci_log_npe = 1; /* log PCI non-parity error errors */
58 /**************************** EDAC PCI sysfs instance *******************/
61 return sprintf(data, "%u\n", atomic_read(&pci->counters.pe_count)); in instance_pe_count_show()
67 return sprintf(data, "%u\n", atomic_read(&pci->counters.npe_count)); in instance_npe_count_show()
73 /* DEVICE instance kobject release() function */
89 /* instance specific attribute structure */
96 /* Function to 'show' fields from the edac_pci 'instance' structure */
103 if (instance_attr->show) in edac_pci_instance_show()
104 return instance_attr->show(pci, buffer); in edac_pci_instance_show()
105 return -EIO; in edac_pci_instance_show()
108 /* Function to 'store' fields into the edac_pci 'instance' structure */
116 if (instance_attr->store) in edac_pci_instance_store()
117 return instance_attr->store(pci, buffer, count); in edac_pci_instance_store()
118 return -EIO; in edac_pci_instance_store()
137 /* pci instance attributes */
145 /* the ktype for a pci instance */
155 * construct one EDAC PCI instance's kobject for use
166 * properly on keeping the module loaded in edac_pci_create_instance_kobj()
170 err = -ENODEV; in edac_pci_create_instance_kobj()
175 err = kobject_init_and_add(&pci->kobj, &ktype_pci_instance, in edac_pci_create_instance_kobj()
178 edac_dbg(2, "failed to register instance pci%d\n", idx); in edac_pci_create_instance_kobj()
183 kobject_uevent(&pci->kobj, KOBJ_ADD); in edac_pci_create_instance_kobj()
184 edac_dbg(1, "Register instance 'pci%d' kobject\n", idx); in edac_pci_create_instance_kobj()
196 * unregister the kobj for the EDAC PCI instance
203 /* Unregister the instance kobject and allow its release in edac_pci_unregister_sysfs_instance_kobj()
207 kobject_put(&pci->kobj); in edac_pci_unregister_sysfs_instance_kobj()
245 if (edac_pci_dev->show) in edac_pci_dev_show()
246 return edac_pci_dev->show(edac_pci_dev->value, buffer); in edac_pci_dev_show()
247 return -EIO; in edac_pci_dev_show()
257 if (edac_pci_dev->store) in edac_pci_dev_store()
258 return edac_pci_dev->store(edac_pci_dev->value, buffer, count); in edac_pci_dev_store()
259 return -EIO; in edac_pci_dev_store()
323 * NOW release our ref count on the core module in edac_pci_release_main_kobj()
340 int err = -ENODEV; in edac_pci_main_kobj_setup()
355 /* Bump the reference count on this module to ensure the in edac_pci_main_kobj_setup()
367 err = -ENOMEM; in edac_pci_main_kobj_setup()
376 &dev_root->kobj, "pci"); in edac_pci_main_kobj_setup()
430 struct kobject *edac_kobj = &pci->kobj; in edac_pci_create_sysfs()
432 edac_dbg(0, "idx=%d\n", pci->pci_idx); in edac_pci_create_sysfs()
439 /* Create this instance's kobject under the MAIN kobject */ in edac_pci_create_sysfs()
440 err = edac_pci_create_instance_kobj(pci, pci->pci_idx); in edac_pci_create_sysfs()
444 err = sysfs_create_link(edac_kobj, &pci->dev->kobj, EDAC_PCI_SYMLINK); in edac_pci_create_sysfs()
464 edac_dbg(0, "index=%d\n", pci->pci_idx); in edac_pci_remove_sysfs()
467 sysfs_remove_link(&pci->kobj, EDAC_PCI_SYMLINK); in edac_pci_remove_sysfs()
469 /* remove this PCI instance's sysfs entries */ in edac_pci_remove_sysfs()
473 * if this 'pci' is the last instance. in edac_pci_remove_sysfs()
552 edac_dbg(4, "PCI STATUS= 0x%04x %s\n", status, dev_name(&dev->dev)); in edac_pci_dev_parity_test()
557 if (status && !dev->broken_parity_status) { in edac_pci_dev_parity_test()
584 header_type, dev_name(&dev->dev)); in edac_pci_dev_parity_test()
591 status, dev_name(&dev->dev)); in edac_pci_dev_parity_test()
596 if (status && !dev->broken_parity_status) { in edac_pci_dev_parity_test()
695 atomic_inc(&pci->counters.pe_count); in edac_pci_handle_pe()
700 pci->ctl_name, pci->pci_idx, msg); in edac_pci_handle_pe()
714 * Called to handle a NON-PARITY ERROR event
720 atomic_inc(&pci->counters.npe_count); in edac_pci_handle_npe()
724 "Non-Parity Error ctl: %s %d: %s\n", in edac_pci_handle_npe()
725 pci->ctl_name, pci->pci_idx, msg); in edac_pci_handle_npe()
736 * Define the PCI parameter to the module