65,7 → 65,9 |
static count_t phys_regions_count = 0; |
static phys_region_t phys_regions[MAX_REGIONS]; |
|
uintptr_t end_frame = 0; |
|
|
/** Check whether frame is available |
* |
* Returns true if given frame is generally available for use. |
75,7 → 77,7 |
*/ |
static bool frame_available(pfn_t frame) |
{ |
#ifdef msim |
#ifdef MACHINE_msim |
/* MSIM device (dprinter) */ |
if (frame == (KA2PA(MSIM_VIDEORAM) >> ZERO_PAGE_WIDTH)) |
return false; |
85,13 → 87,13 |
return false; |
#endif |
|
#ifdef simics |
#ifdef MACHINE_simics |
/* Simics device (serial line) */ |
if (frame == (KA2PA(SERIAL_ADDRESS) >> ZERO_PAGE_WIDTH)) |
return false; |
#endif |
|
#if defined(lgxemul) || defined(bgxemul) |
#if defined(MACHINE_lgxemul) || defined(MACHINE_bgxemul) |
/* gxemul devices */ |
if (overlaps(frame << ZERO_PAGE_WIDTH, ZERO_PAGE_SIZE, |
0x10000000, MB2SIZE(256))) |
236,8 → 238,10 |
} |
} |
|
frame_add_region(start_frame, frame); |
end_frame = frame; |
|
frame_add_region(start_frame, end_frame); |
|
/* Blacklist interrupt vector frame */ |
frame_mark_unavailable(0, 1); |
|