Lines Matching +full:use +full:- +full:parity
20 static int check_pci_errors; /* default NO check PCI parity */
21 static int edac_pci_panic_on_pe; /* default NO panic on PCI Parity */
22 static int edac_pci_log_pe = 1; /* log PCI parity errors */
23 static int edac_pci_log_npe = 1; /* log PCI non-parity error errors */
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()
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()
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()
155 * construct one EDAC PCI instance's kobject for use
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()
183 kobject_uevent(&pci->kobj, KOBJ_ADD); in edac_pci_create_instance_kobj()
207 kobject_put(&pci->kobj); in edac_pci_unregister_sysfs_instance_kobj()
238 /* Set of show/store abstract level functions for PCI Parity object */
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()
283 /* PCI Parity control files */
340 int err = -ENODEV; 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()
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()
514 /* Clear any PCI parity errors logged by this device. */
529 * PCI Parity polling
531 * Function to retrieve the current parity status
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()
567 "Master Data Parity Error on %s\n", in edac_pci_dev_parity_test()
575 "Detected Parity Error on %s\n", 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()
606 "Master Data Parity Error on " in edac_pci_dev_parity_test()
614 "Detected Parity Error on %s\n", in edac_pci_dev_parity_test()
627 * pci_dev parity list iterator
629 * Scan the PCI device list looking for SERRORs, Master Parity ERRORS or
630 * Parity ERRORs on primary or secondary devices.
643 * performs the actual PCI parity check operation
657 /* scan all PCI devices looking for a Parity Error on devices and in edac_pci_do_parity_check()
668 panic("EDAC: PCI Parity Error"); in edac_pci_do_parity_check()
680 /* Clear any PCI bus parity errors that devices initially have logged in edac_pci_clear_parity_errors()
689 * Called to handle a PARITY ERROR event
695 atomic_inc(&pci->counters.pe_count); in edac_pci_handle_pe()
699 "Parity Error ctl: %s %d: %s\n", 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()
740 "Check for PCI bus parity errors: 0=off 1=on");
743 "Panic on PCI Bus Parity error: 0=off 1=on");