Re: Possible workaround for buggy E801 call in 2.2.x

david parsons (orc@pell.portland.or.us)
19 Dec 1999 22:01:00 -0800


In article <linux.kernel.006b01bf49f7$23352b20$16f838ca@home-computer>,
Prashant TR <prashant_tr@yahoo.com> wrote:
>Hi Nathan and Paul,
>
>Ok. The E801 call is broken on some BIOSes. So, can't we have
>an arrangement like this:
>
>The docs for E801 mention that the max. that can be returned in
>AX is 0x3c00.
>
>So,
>
>1> If the E801 call returns AX < 0x3c00, then the system has < 64M
>RAM (or the BIOS is broken) and the standard 88h call should give
>the memory size.
>
>2> If E801 returns AX > 0x3c00, then the BIOS is definitely broken
>and again the standard 88h call should give the correct memory
>size.

Are there any cases where a system does not have E820 but has a
broken E801? And in that case, is there any safe way to deal
with it? If you're assuming that E801 is only broken when AX
>15mb, you'll get bitten when your 12mb machine cheerfully E801's
back 14.5mb in AX -- As someone who spent a few months sorting
threw bizarre E820 errors, I'll say that it's a lot better to gets
lots of "this machine isn't correctly reporting memory" than it is
to get one or two "this machine isn't correctly reporting memory"
while other machines of that type cheerfully work.

____
david parsons \bi/ Computers are evil.
\/

-
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/