powerpc/eeh: Replace pci_dn with eeh_dev for EEH sysfs
With original EEH implementation, all EEH related statistics have been put into struct pci_dn. We've introduced struct eeh_dev to replace struct pci_dn in EEH core components, including EEH sysfs component. The patch shows EEH statistics from struct eeh_dev instead of struct pci_dn in EEH sysfs component. Besides, it also fixed the EEH device retrieval from PCI device, which was introduced by the previous patch in the series of patch. Signed-off-by: Gavin Shan <shangw@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
Родитель
eb740b5f3e
Коммит
44da8edc6a
|
@ -41,24 +41,21 @@ static ssize_t eeh_show_##_name(struct device *dev, \
|
|||
struct device_attribute *attr, char *buf) \
|
||||
{ \
|
||||
struct pci_dev *pdev = to_pci_dev(dev); \
|
||||
struct device_node *dn = pci_device_to_OF_node(pdev); \
|
||||
struct pci_dn *pdn; \
|
||||
struct eeh_dev *edev = pci_dev_to_eeh_dev(pdev); \
|
||||
\
|
||||
if (!dn || PCI_DN(dn) == NULL) \
|
||||
return 0; \
|
||||
if (!edev) \
|
||||
return 0; \
|
||||
\
|
||||
pdn = PCI_DN(dn); \
|
||||
return sprintf(buf, _format "\n", pdn->_memb); \
|
||||
return sprintf(buf, _format "\n", edev->_memb); \
|
||||
} \
|
||||
static DEVICE_ATTR(_name, S_IRUGO, eeh_show_##_name, NULL);
|
||||
|
||||
|
||||
EEH_SHOW_ATTR(eeh_mode, eeh_mode, "0x%x");
|
||||
EEH_SHOW_ATTR(eeh_config_addr, eeh_config_addr, "0x%x");
|
||||
EEH_SHOW_ATTR(eeh_pe_config_addr, eeh_pe_config_addr, "0x%x");
|
||||
EEH_SHOW_ATTR(eeh_check_count, eeh_check_count, "%d");
|
||||
EEH_SHOW_ATTR(eeh_freeze_count, eeh_freeze_count, "%d");
|
||||
EEH_SHOW_ATTR(eeh_false_positives, eeh_false_positives, "%d");
|
||||
EEH_SHOW_ATTR(eeh_mode, mode, "0x%x");
|
||||
EEH_SHOW_ATTR(eeh_config_addr, config_addr, "0x%x");
|
||||
EEH_SHOW_ATTR(eeh_pe_config_addr, pe_config_addr, "0x%x");
|
||||
EEH_SHOW_ATTR(eeh_check_count, check_count, "%d" );
|
||||
EEH_SHOW_ATTR(eeh_freeze_count, freeze_count, "%d" );
|
||||
EEH_SHOW_ATTR(eeh_false_positives, false_positives, "%d" );
|
||||
|
||||
void eeh_sysfs_add_device(struct pci_dev *pdev)
|
||||
{
|
||||
|
|
Загрузка…
Ссылка в новой задаче