Subject: Re: "IRQ not configured"
To: None <seebs@plethora.net>
From: Masanori Kanaoka <kanaoka@ann.hi-ho.ne.jp>
List: port-i386
Date: 01/03/2002 14:16:22
Hi,

       From: seebs@plethora.net (Peter Seebach)
    Subject: Re: "IRQ not configured"
      Date : Tue, 01 Jan 2002 15:17:11 -0600
 Message-ID: <200201012117.g01LHBP16656@guild.plethora.net>

$ Sure!

Thanks.


PIR Entry 0:
 	Bus: 0  Device: 9
 		INTA: link 0x02 bitmap 0x0800
 		INTB: link 0x03 bitmap 0x0200
PIR Entry 1:
 	Bus: 0  Device: 10
 		INTA: link 0x05 bitmap 0x0800
PIR Entry 2:
 	Bus: 0  Device: 7
 		INTA: link 0x01 bitmap 0x0200
 		INTB: link 0x02 bitmap 0x0800
 		INTC: link 0x03 bitmap 0x0200
 		INTD: link 0x05 bitmap 0x0800
PIR Entry 4:
 	Bus: 0  Device: 1
 		INTA: link 0x01 bitmap 0x0200


 link  clink	bitmap	   irq
 0x01	0x00	0x0200	   9
 0x02	0x01	0x0800	   11
 0x03	0x02	0x0200	   9
 0x05	0x03	0x0800	   11

It seems that your BIOS is right.

I think via82c586_get_intr need some patch.
But I do not thik of it.

I think of another patch.
How about trying next patch?

Regards!
---
 Masanori Kanaoka	kanaoka@ann.hi-ho.ne.jp


Index: sys/arch/i386/pci/pci_intr_fixup.c
===================================================================
RCS file: /ftp/cvs/syssrc/sys/arch/i386/pci/pci_intr_fixup.c,v
retrieving revision 1.19
diff -u -r1.19 pci_intr_fixup.c
--- sys/arch/i386/pci/pci_intr_fixup.c	2001/12/07 08:07:57	1.19
+++ sys/arch/i386/pci/pci_intr_fixup.c	2002/01/03 04:58:12
@@ -150,6 +150,8 @@
 
 	{ PCI_VENDOR_VIATECH,	PCI_PRODUCT_VIATECH_VT82C586_ISA,
 	  via82c586_init },
+	{ PCI_VENDOR_VIATECH,	PCI_PRODUCT_VIATECH_VT82C596A,
+	  via82c586_init },
 	{ PCI_VENDOR_VIATECH,	PCI_PRODUCT_VIATECH_VT82C686A_ISA,
 	  via82c586_init },
 
@@ -429,6 +431,7 @@
 	 */
 	for (l = SIMPLEQ_FIRST(&pciintr_link_map_list); l != NULL;
 	     l = SIMPLEQ_NEXT(l, list)) {
+#if 0
 		if (l->irq != I386_PCI_INTERRUPT_LINE_NO_CONNECTION) {
 			/*
 			 * Interrupt is already connected.  Don't do
@@ -442,6 +445,7 @@
 #endif
 			continue;
 		}
+#endif
 		/*
 		 * Interrupt isn't connected.  Attempt to assign it to an IRQ.
 		 */
Index: sys/arch/i386/pci/via82c586.c
===================================================================
RCS file: /ftp/cvs/syssrc/sys/arch/i386/pci/via82c586.c,v
retrieving revision 1.4
diff -u -r1.4 via82c586.c
--- sys/arch/i386/pci/via82c586.c	2001/11/15 07:03:35	1.4
+++ sys/arch/i386/pci/via82c586.c	2002/01/02 23:49:22
@@ -156,6 +156,12 @@
 		return (0);
 	}
 
+	/* Some BIOS have 0x05 link. */
+	if (link == 5) {
+		*clinkp = link -2;
+		return (0);
+	}
+
 	return (1);
 }