powerpc/eeh: Remove device_node dependency
The patch removes struct eeh_dev::dn and the corresponding helper functions: eeh_dev_to_of_node() and of_node_to_eeh_dev(). Instead, eeh_dev_to_pdn() and pdn_to_eeh_dev() should be used to get the pdn, which might contain device_node on PowerNV platform. Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:

committed by
Benjamin Herrenschmidt

parent
0bd785873c
commit
c6406d8fbb
@@ -201,25 +201,11 @@ static inline int pci_device_from_OF_node(struct device_node *np,
|
||||
}
|
||||
|
||||
#if defined(CONFIG_EEH)
|
||||
static inline struct eeh_dev *of_node_to_eeh_dev(struct device_node *dn)
|
||||
{
|
||||
/*
|
||||
* For those OF nodes whose parent isn't PCI bridge, they
|
||||
* don't have PCI_DN actually. So we have to skip them for
|
||||
* any EEH operations.
|
||||
*/
|
||||
if (!dn || !PCI_DN(dn))
|
||||
return NULL;
|
||||
|
||||
return PCI_DN(dn)->edev;
|
||||
}
|
||||
|
||||
static inline struct eeh_dev *pdn_to_eeh_dev(struct pci_dn *pdn)
|
||||
{
|
||||
return pdn ? pdn->edev : NULL;
|
||||
}
|
||||
#else
|
||||
#define of_node_to_eeh_dev(x) (NULL)
|
||||
#define pdn_to_eeh_dev(x) (NULL)
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user