static void __init sabre_scan_bus(struct pci_controller_info *p) 
static void sabre_scan_bus(struct pci_controller_info *p) 
static void __init sabre_scan_bus(struct pci_controller_info *p){	static int once;	struct pci_bus *sabre_bus, *pbus;	struct pci_pbm_info *pbm;	struct pcidev_cookie *cookie;	int sabres_scanned;	/* The APB bridge speaks to the Sabre host PCI bridge	 * at 66Mhz, but the front side of APB runs at 33Mhz	 * for both segments.	 */	p->pbm_A.is_66mhz_capable = 0;	p->pbm_B.is_66mhz_capable = 0;	/* This driver has not been verified to handle	 * multiple SABREs yet, so trap this.	 *	 * Also note that the SABRE host bridge is hardwired	 * to live at bus 0.	 */	if (once != 0) {		prom_printf("SABRE: Multiple controllers unsupported.\n");		prom_halt();	}	once++;	cookie = alloc_bridge_cookie(&p->pbm_A);	sabre_bus = pci_scan_bus(p->pci_first_busno,				 p->pci_ops,				 &p->pbm_A);	pci_fixup_host_bridge_self(sabre_bus);	sabre_bus->self->sysdata = cookie;	sabre_root_bus = sabre_bus;	apb_init(p, sabre_bus);	sabres_scanned = 0;	list_for_each_entry(pbus, &sabre_bus->children, node) {		if (pbus->number == p->pbm_A.pci_first_busno) {			pbm = &p->pbm_A;		} else if (pbus->number == p->pbm_B.pci_first_busno) {			pbm = &p->pbm_B;		} else			continue;		cookie = alloc_bridge_cookie(pbm);		pbus->self->sysdata = cookie;		sabres_scanned++;		pbus->sysdata = pbm;		pbm->pci_bus = pbus;		pci_fill_in_pbm_cookies(pbus, pbm, pbm->prom_node);		pci_record_assignments(pbm, pbus);		pci_assign_unassigned(pbm, pbus);		pci_fixup_irq(pbm, pbus);		pci_determine_66mhz_disposition(pbm, pbus);		pci_setup_busmastering(pbm, pbus);	}	if (!sabres_scanned) {		/* Hummingbird, no APBs. */		pbm = &p->pbm_A;		sabre_bus->sysdata = pbm;		pbm->pci_bus = sabre_bus;		pci_fill_in_pbm_cookies(sabre_bus, pbm, pbm->prom_node);		pci_record_assignments(pbm, sabre_bus);		pci_assign_unassigned(pbm, sabre_bus);		pci_fixup_irq(pbm, sabre_bus);		pci_determine_66mhz_disposition(pbm, sabre_bus);		pci_setup_busmastering(pbm, sabre_bus);	}	sabre_register_error_handlers(p);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/085ae41f66657a9655ce832b0a61832a06f0e1dc/pci_sabre.c/buggy/arch/sparc64/kernel/pci_sabre.c