MFi386: revision 1.599 (Preserve dcons(4) buffer passed by loader(8).)
This commit is contained in:
parent
56f0c46a3b
commit
9bb402796d
@ -1557,6 +1557,7 @@ getmemsize(int first)
|
||||
char *cp;
|
||||
struct bios_smap *smap;
|
||||
#endif
|
||||
quad_t dcons_addr, dcons_size;
|
||||
|
||||
#ifdef PC98
|
||||
/* XXX - some of EPSON machines can't use PG_N */
|
||||
@ -1871,6 +1872,13 @@ next_run: ;
|
||||
phys_avail[pa_indx] = physmap[0];
|
||||
pte = CMAP1;
|
||||
|
||||
/*
|
||||
* Get dcons buffer address
|
||||
*/
|
||||
if (getenv_quad("dcons.addr", &dcons_addr) == 0 ||
|
||||
getenv_quad("dcons.size", &dcons_size) == 0)
|
||||
dcons_addr = 0;
|
||||
|
||||
/*
|
||||
* physmap is in bytes, so when converting to page boundaries,
|
||||
* round up the start address and round down the end address.
|
||||
@ -1891,6 +1899,14 @@ next_run: ;
|
||||
if (pa >= KERNLOAD && pa < first)
|
||||
continue;
|
||||
|
||||
/*
|
||||
* block out dcons buffer
|
||||
*/
|
||||
if (dcons_addr > 0
|
||||
&& pa >= trunc_page(dcons_addr)
|
||||
&& pa < dcons_addr + dcons_size)
|
||||
continue;
|
||||
|
||||
page_bad = FALSE;
|
||||
|
||||
/*
|
||||
|
@ -1557,6 +1557,7 @@ getmemsize(int first)
|
||||
char *cp;
|
||||
struct bios_smap *smap;
|
||||
#endif
|
||||
quad_t dcons_addr, dcons_size;
|
||||
|
||||
#ifdef PC98
|
||||
/* XXX - some of EPSON machines can't use PG_N */
|
||||
@ -1871,6 +1872,13 @@ next_run: ;
|
||||
phys_avail[pa_indx] = physmap[0];
|
||||
pte = CMAP1;
|
||||
|
||||
/*
|
||||
* Get dcons buffer address
|
||||
*/
|
||||
if (getenv_quad("dcons.addr", &dcons_addr) == 0 ||
|
||||
getenv_quad("dcons.size", &dcons_size) == 0)
|
||||
dcons_addr = 0;
|
||||
|
||||
/*
|
||||
* physmap is in bytes, so when converting to page boundaries,
|
||||
* round up the start address and round down the end address.
|
||||
@ -1891,6 +1899,14 @@ next_run: ;
|
||||
if (pa >= KERNLOAD && pa < first)
|
||||
continue;
|
||||
|
||||
/*
|
||||
* block out dcons buffer
|
||||
*/
|
||||
if (dcons_addr > 0
|
||||
&& pa >= trunc_page(dcons_addr)
|
||||
&& pa < dcons_addr + dcons_size)
|
||||
continue;
|
||||
|
||||
page_bad = FALSE;
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user