#endif	/* CONFIG_PCI */ 
asmlinkage int sys32_pciconfig_iobase(u32 which, u32 in_bus, u32 in_devfn){	struct pci_controller* hose;	struct list_head *ln;	struct pci_bus *bus = NULL;	struct device_node *hose_node;	/* Argh ! Please forgive me for that hack, but that's the	 * simplest way to get existing XFree to not lockup on some	 * G5 machines... So when something asks for bus 0 io base	 * (bus 0 is HT root), we return the AGP one instead.	 */#ifdef CONFIG_PPC_PMAC	if (systemcfg->platform == PLATFORM_POWERMAC &&	    machine_is_compatible("MacRISC4"))		if (in_bus == 0)			in_bus = 0xf0;#endif /* CONFIG_PPC_PMAC */	/* That syscall isn't quite compatible with PCI domains, but it's	 * used on pre-domains setup. We return the first match	 */	for (ln = pci_root_buses.next; ln != &pci_root_buses; ln = ln->next) {		bus = pci_bus_b(ln);		if (in_bus >= bus->number && in_bus < (bus->number + bus->subordinate))			break;		bus = NULL;	}	if (bus == NULL || bus->sysdata == NULL)		return -ENODEV;	hose_node = (struct device_node *)bus->sysdata;	hose = hose_node->phb;	switch (which) {	case IOBASE_BRIDGE_NUMBER:		return (long)hose->first_busno;	case IOBASE_MEMORY:		return (long)hose->pci_mem_offset;	case IOBASE_IO:		return (long)hose->io_base_phys;	case IOBASE_ISA_IO:		return (long)isa_io_base;	case IOBASE_ISA_MEM:		return -EINVAL;	}	return -EOPNOTSUPP;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/145d01e4287b8cbf50f87c3283e33bf5c84e8468/sys_ppc32.c/buggy/arch/ppc64/kernel/sys_ppc32.c