PPCDBG(PPCDBG_BUSWALK, "PCI: BridgeInfo, Type:0x%02X, SubBus:0x%02X, MaxAgents:0x%02X, MaxSubBus: 0x%02X, LSlot: 0x%02X\n", BridgeInfo->busUnitInfo.deviceType, BridgeInfo->subBusNumber, BridgeInfo->maxAgents, BridgeInfo->maxSubBusNumber, BridgeInfo->logicalSlotNumber);  
static void scan_EADS_bridge(HvBusNumber bus, HvSubBusNumber SubBus,		int IdSel){	struct HvCallPci_BridgeInfo *BridgeInfo;	HvAgentId AgentId;	int Function;	int HvRc;	BridgeInfo = (struct HvCallPci_BridgeInfo *)		kmalloc(sizeof(struct HvCallPci_BridgeInfo), GFP_KERNEL);	if (BridgeInfo == NULL)		return;	/* Note: hvSubBus and irq is always be 0 at this level! */	for (Function = 0; Function < 8; ++Function) {		AgentId = ISERIES_PCI_AGENTID(IdSel, Function);		HvRc = HvCallXm_connectBusUnit(bus, SubBus, AgentId, 0);		if (HvRc == 0) {			printk("found device at bus %d idsel %d func %d (AgentId %x)\n",			       bus, IdSel, Function, AgentId);			/*  Connect EADs: 0x18.00.12 = 0x00 */			PPCDBG(PPCDBG_BUSWALK,					"PCI:Connect EADs: 0x%02X.%02X.%02X\n",					bus, SubBus, AgentId);			HvRc = HvCallPci_getBusUnitInfo(bus, SubBus, AgentId,					iseries_hv_addr(BridgeInfo),					sizeof(struct HvCallPci_BridgeInfo));			if (HvRc == 0) {				printk("bridge info: type %x subbus %x maxAgents %x maxsubbus %x logslot %x\n",					BridgeInfo->busUnitInfo.deviceType,					BridgeInfo->subBusNumber,					BridgeInfo->maxAgents,					BridgeInfo->maxSubBusNumber,					BridgeInfo->logicalSlotNumber);				PPCDBG(PPCDBG_BUSWALK,					"PCI: BridgeInfo, Type:0x%02X, SubBus:0x%02X, MaxAgents:0x%02X, MaxSubBus: 0x%02X, LSlot: 0x%02X\n",					BridgeInfo->busUnitInfo.deviceType,					BridgeInfo->subBusNumber,					BridgeInfo->maxAgents,					BridgeInfo->maxSubBusNumber,					BridgeInfo->logicalSlotNumber);				if (BridgeInfo->busUnitInfo.deviceType ==						HvCallPci_BridgeDevice)  {					/* Scan_Bridge_Slot...: 0x18.00.12 */					scan_bridge_slot(bus, BridgeInfo);				} else					printk("PCI: Invalid Bridge Configuration(0x%02X)",						BridgeInfo->busUnitInfo.deviceType);			}		} else if (HvRc != 0x000B)			pci_Log_Error("EADs Connect",					bus, SubBus, AgentId, HvRc);	}	kfree(BridgeInfo);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/dcad47fc423ac9f4934579af814fa2dad5c8081b/pci.c/clean/arch/powerpc/platforms/iseries/pci.c