Changeset e49e234 in mainline for kernel/arch/amd64


Ignore:
Timestamp:
2009-02-27T11:32:31Z (17 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c1f7f6ea
Parents:
5f0f29ce
Message:

kernel memory management revisited (phase 2): map physical memory according to zones

  • ia32: register reserved and ACPI zones
  • pareas are now used only for mapping of present physical memory (hw_area() is gone)
  • firmware zones and physical addresses outside any zones are allowed to be mapped generally
  • fix nasty antient bug in zones_insert_zone()
Location:
kernel/arch/amd64
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/amd64/include/mm/frame.h

    r5f0f29ce re49e234  
    2727 */
    2828
    29 /** @addtogroup amd64mm 
     29/** @addtogroup amd64mm
    3030 * @{
    3131 */
     
    4040#endif /* __ASM__ */
    4141
    42 #define FRAME_WIDTH             12      /* 4K */
    43 #define FRAME_SIZE              (1 << FRAME_WIDTH)
     42#define FRAME_WIDTH  12  /* 4K */
     43#define FRAME_SIZE   (1 << FRAME_WIDTH)
    4444
    4545#ifndef __ASM__
    4646extern uintptr_t last_frame;
    47 extern uintptr_t end_frame;
    4847extern void frame_arch_init(void);
    4948extern void physmem_print(void);
  • kernel/arch/amd64/src/mm/page.c

    r5f0f29ce re49e234  
    3535#include <arch/mm/page.h>
    3636#include <genarch/mm/page_pt.h>
    37 #include <genarch/drivers/ega/ega.h>
    38 #include <genarch/drivers/legacy/ia32/io.h>
    3937#include <arch/mm/frame.h>
    4038#include <mm/page.h>
     
    4947#include <panic.h>
    5048#include <align.h>
    51 #include <ddi/ddi.h>
    52 
    53 /** Physical memory area for devices. */
    54 static parea_t dev_area;
    55 static parea_t ega_area;
    5649
    5750/* Definitions for identity page mapper */
     
    222215}
    223216
    224 void hw_area(void)
    225 {
    226         dev_area.pbase = end_frame;
    227         dev_area.frames = SIZE2FRAMES(0xfffffffffffff - end_frame);
    228         ddi_parea_register(&dev_area);
    229        
    230         ega_area.pbase = EGA_VIDEORAM;
    231         ega_area.frames = SIZE2FRAMES(EGA_VRAM_SIZE);
    232         ddi_parea_register(&ega_area);
    233 }
    234 
    235217/** @}
    236218 */
Note: See TracChangeset for help on using the changeset viewer.