if (!(dn->eeh_mode & EEH_MODE_SUPPORTED) || dn->eeh_mode & EEH_MODE_NOCHECK) { 
pdn = dn->data; if (!(pdn->eeh_mode & EEH_MODE_SUPPORTED) || pdn->eeh_mode & EEH_MODE_NOCHECK) { 
static void __pci_addr_cache_insert_device(struct pci_dev *dev){	struct device_node *dn;	int i;	int inserted = 0;	dn = pci_device_to_OF_node(dev);	if (!dn) {		printk(KERN_WARNING "PCI: no pci dn found for dev=%s\n",			pci_name(dev));		return;	}	/* Skip any devices for which EEH is not enabled. */	if (!(dn->eeh_mode & EEH_MODE_SUPPORTED) ||	    dn->eeh_mode & EEH_MODE_NOCHECK) {#ifdef DEBUG		printk(KERN_INFO "PCI: skip building address cache for=%s\n",		       pci_name(dev));#endif		return;	}	/* The cache holds a reference to the device... */	pci_dev_get(dev);	/* Walk resources on this device, poke them into the tree */	for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) {		unsigned long start = pci_resource_start(dev,i);		unsigned long end = pci_resource_end(dev,i);		unsigned int flags = pci_resource_flags(dev,i);		/* We are interested only bus addresses, not dma or other stuff */		if (0 == (flags & (IORESOURCE_IO | IORESOURCE_MEM)))			continue;		if (start == 0 || ~start == 0 || end == 0 || ~end == 0)			 continue;		pci_addr_cache_insert(dev, start, end, flags);		inserted = 1;	}	/* If there was nothing to add, the cache has no reference... */	if (!inserted)		pci_dev_put(dev);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/1635317facea3094ddf34082cd86797efb1d9f7e/eeh.c/clean/arch/ppc64/kernel/eeh.c