static unsigned int __init psycho_irq_build(struct pci_pbm_info *pbm, struct pci_dev *pdev, unsigned int ino) 
static unsigned int psycho_irq_build(struct pci_pbm_info *pbm, struct pci_dev *pdev, unsigned int ino) 
static unsigned int __init psycho_irq_build(struct pci_pbm_info *pbm,					    struct pci_dev *pdev,					    unsigned int ino){	struct ino_bucket *bucket;	unsigned long imap, iclr;	unsigned long imap_off, iclr_off;	int pil, inofixup = 0;	ino &= PCI_IRQ_INO;	if (ino < PSYCHO_ONBOARD_IRQ_BASE) {		/* PCI slot */		imap_off = psycho_pcislot_imap_offset(ino);	} else {		/* Onboard device */		if (ino > PSYCHO_ONBOARD_IRQ_LAST) {			prom_printf("psycho_irq_build: Wacky INO [%x]\n", ino);			prom_halt();		}		imap_off = psycho_onboard_imap_offset(ino);	}	/* Now build the IRQ bucket. */	pil = psycho_ino_to_pil(pdev, ino);	if (PIL_RESERVED(pil))		BUG();	imap = pbm->controller_regs + imap_off;	imap += 4;	iclr_off = psycho_iclr_offset(ino);	iclr = pbm->controller_regs + iclr_off;	iclr += 4;	if ((ino & 0x20) == 0)		inofixup = ino & 0x03;	bucket = __bucket(build_irq(pil, inofixup, iclr, imap));	bucket->flags |= IBF_PCI;	return __irq(bucket);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/085ae41f66657a9655ce832b0a61832a06f0e1dc/pci_psycho.c/buggy/arch/sparc64/kernel/pci_psycho.c