Port-hp700 archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: elroy(4) interrupt mapping issue
On Wednesday 19 January 2011 23:50:03 Tobias Nygren wrote:
> Hi,
>
> I recently tried booting -current on my C3600. Overally it
> works really well, almost everything seems to be supported(1)!
good news.
> Then I tried to plug in a 3rd party PCI card and found a problem
> with interrupt mapping:
>
> elroy1 at astro0 hpa 0xfed32000 path 10/1: Elroy TR4.0 APIC ver 20,
> 7 pins
> pci1 at elroy1 bus 0
> wm0 at pci1 dev 4 function 0: Intel i82540EM 1000BASE-T Ethernet, rev. 2
> wm0: interrupting at line 255 irq 31
Any specific reason you want wm0? 1GE?
> The bogus line 255 turns out to be that hp700_intr_allocate_bit()
> returns -1 and apic_intr_map() does not check the return value for an
> error condition.
>
> My current solution to this problem is to disable the onboard esiop
> SCSI controllers in the kernel config, which seems to free up an
> interrupt bit for the NIC.
>
> Any suggestion as to how to fix this so the PCI slots can be used?
yeah, the attached patch should help
int_reg_cpu is something on my todo list.
Nick
Index: sys/arch/hp700/dev/cpu.c
===================================================================
RCS file: /cvsroot/src/sys/arch/hp700/dev/cpu.c,v
retrieving revision 1.16
diff -u -p -u -r1.16 cpu.c
--- sys/arch/hp700/dev/cpu.c 8 Dec 2010 09:48:27 -0000 1.16
+++ sys/arch/hp700/dev/cpu.c 20 Jan 2011 00:14:28 -0000
@@ -166,5 +166,6 @@ cpuattach(device_t parent, device_t self
* or below 27.
*/
int_reg_cpu.int_reg_allocatable_bits =
+ (1 << 25) | (1 << 24) | (1 << 23) |
(1 << 28) | (1 << 27) | (1 << 26);
}
Home |
Main Index |
Thread Index |
Old Index