hose->index, pci_pretty_name (dev)); 
hose->index); 
marvel_map_irq(struct pci_dev *dev, u8 slot, u8 pin){	struct pci_controller *hose = dev->sysdata;	struct io7_port *io7_port = hose->sysdata;	struct io7 *io7 = io7_port->io7;	int msi_loc, msi_data_off;	u16 msg_ctl;	u16 msg_dat;	u8 intline; 	int irq;	pci_read_config_byte(dev, PCI_INTERRUPT_LINE, &intline);	irq = intline;	msi_loc = pci_find_capability(dev, PCI_CAP_ID_MSI);	msg_ctl = 0;	if (msi_loc) 		pci_read_config_word(dev, msi_loc + PCI_MSI_FLAGS, &msg_ctl);	if (msg_ctl & PCI_MSI_FLAGS_ENABLE) { 		msi_data_off = PCI_MSI_DATA_32;		if (msg_ctl & PCI_MSI_FLAGS_64BIT) 			msi_data_off = PCI_MSI_DATA_64;		pci_read_config_word(dev, msi_loc + msi_data_off, &msg_dat);		irq = msg_dat & 0x1ff;		/* we use msg_data<8:0> */		irq += 0x80;			/* offset for lsi       */#if 1		printk("PCI:%d:%d:%d (hose %d) [%s] is using MSI\n",		       dev->bus->number, 		       PCI_SLOT(dev->devfn), 		       PCI_FUNC(dev->devfn),		       hose->index,		       pci_pretty_name (dev));		printk("  %d message(s) from 0x%04x\n", 		       1 << ((msg_ctl & PCI_MSI_FLAGS_QSIZE) >> 4),		       msg_dat);		printk("  reporting on %d IRQ(s) from %d (0x%x)\n", 		       1 << ((msg_ctl & PCI_MSI_FLAGS_QSIZE) >> 4),		       (irq + 16) | (io7->pe << MARVEL_IRQ_VEC_PE_SHIFT),		       (irq + 16) | (io7->pe << MARVEL_IRQ_VEC_PE_SHIFT));#endif#if 0		pci_write_config_word(dev, msi_loc + PCI_MSI_FLAGS,				      msg_ctl & ~PCI_MSI_FLAGS_ENABLE);		pci_read_config_byte(dev, PCI_INTERRUPT_LINE, &intline);		irq = intline;		printk("  forcing LSI interrupt on irq %d [0x%x]\n", irq, irq);#endif	}	irq += 16;					/* offset for legacy */	irq |= io7->pe << MARVEL_IRQ_VEC_PE_SHIFT;	/* merge the pid     */	return irq; }
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/982245f01734e9d5a3ab98b2b2e9761ae7719094/sys_marvel.c/clean/arch/alpha/kernel/sys_marvel.c