51,21 → 51,12 |
|
void frame_arch_init(void) |
{ |
static pfn_t minconf; |
|
if (config.cpu_active == 1) { |
minconf = 1; |
#ifdef CONFIG_SIMICS_FIX |
minconf = max(minconf, ADDR2PFN(0x10000)); |
#endif |
|
/* Reserve frame 0 (BIOS data) */ |
frame_mark_unavailable(0, 1); |
pfn_t start = ADDR2PFN(ALIGN_UP(KA2PA(start_info.pt_base), PAGE_SIZE)) + start_info.nr_pt_frames; |
size_t size = start_info.nr_pages - start; |
|
#ifdef CONFIG_SIMICS_FIX |
/* Don't know why, but these addresses help */ |
frame_mark_unavailable(0xd000 >> FRAME_WIDTH,3); |
#endif |
zone_create(start, size, start, 0); |
last_frame = start + size; |
} |
} |
|