Re: holes for ISA boards...

Tom Leete (tleete@access.mountain.net)
Fri, 11 Jun 1999 22:29:33 -0400


-----Original Message-----
From: Aaron J. Grier <aaron@frye.com>

>Summary: how do I make a memory "hole" for doing ISA I/O?

[...]
>--- arch/i386/mm/init.c.orig Thu Jun 10 16:13:22 1999
>+++ arch/i386/mm/init.c Fri Jun 11 13:12:27 1999

[...]
>+ if(virt_to_bus((void *)start_mem) < 0xC00000 && virt_to_bus((void
*)start_mem) >= 0x1000000) {

This looks like "if(0)" to me. Might explain the oops, everything gets
PG_reserved.

> clear_bit(PG_reserved, &mem_map[MAP_NR(start_mem)].flags);
>- start_mem += PAGE_SIZE;
>+ } else {
>+ set_bit(PG_reserved, &mem_map[MAP_NR(start_mem)].flags);
>+ }
>+ start_mem += PAGE_SIZE;

I havn't absorbed the rest of the patch yet, so no further comment on the
code.

I think this can be done if the Epson board is able to do ISA busmastering.

I've been looking at the bigphysarea patch to address a similar problem, but
it is unsuitable for this. It does not accomodate memory holes, always
placing its allocation as low as possible in memory.

I'll be very interested if you succeed at this. Rant of mine will be
elsewhere in this thread.

Cheers
Tom

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