Could you try to remove 'inb $0x92,%al','orb $02,%al','outb %al,$0x92'
from arch/i386/boot/setup.S ? Maybe it causes something to your A20.
For example A20 through KBC and bit 1 of port 0x92 are wired together
with XOR, and port 0x92 acts immediately, while KBC acts with delay.
So test for a20 succeeds, as KBC did not turned its A20 yet, but then
after KBC gets done its job, it dies... (eventually overwritting kernel
itself; do you use zImage or bzImage? with bzImage at odd megabyte it should
die almost immediately)
But it is pure speculation. Value of %ax after a20_wait loop finishes
could be interesting too - is it zero (no loop), one (0ffff:210 contained
0), or something higher (we had to wait for KBC)?
You can also try loading with loadlin from DOS with XMS manager,
instead of through LILO, as if you'll load DOS=HIGH, it will enable A20
for you. And temporary remove whole A20 game from boot.S.
Best regards,
Petr Vandrovec
vandrove@vc.cvut.cz
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/