Re: IO-APIC and 2.1.123/2.1.124pre1

Mike Black (mblack@csihq.com)
Thu, 1 Oct 1998 08:29:09 -0400


The patch below worked for me too on 2.1.123. I guess the logic in ISA_ELCR
is not properly detecting this.
My hardware is Acer Altos/7000p Dual PPro 133 (EISA/PCI motherboard).
Is there anyway I can get the following to run so we can debug this (the
inb() SIGSEGs on me)?

#include <asm/io.h>

/*
* ISA Edge/Level control register, ELCR
*/
static int ISA_ELCR(unsigned int irq)
{
if (irq < 16) {
unsigned int port = 0x4d0 + (irq >> 3);
return (inb(port) >> (irq & 7)) & 1;
}
return 0;
}

main()
{
printf("Edge=%d\n",ISA_ELCR(11));
}
~

>- --- linux/arch/i386/kernel/orig.io_apic.c Wed Sep 30 15:01:38 1998
>+++ linux/arch/i386/kernel/io_apic.c Wed Sep 30 15:02:06 1998
>@@ -351,7 +351,7 @@
> {
> case MP_BUS_ISA: /* ISA pin */
> {
>- - polarity =
default_ISA_polarity(idx);
>+ polarity = 0;
> break;
> }
> case MP_BUS_PCI: /* PCI pin */
>
>
>Again, the hardware is:
>
> HP Vectra XU 6/150 (dual ppro 150, KX chipset)
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/