Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 1812 → Rev 1813

/trunk/kernel/arch/xen32/src/xen32.c
55,6 → 55,7
 
#include <arch/bios/bios.h>
 
#include <arch/boot/boot.h>
#include <arch/mm/memory_init.h>
#include <interrupt.h>
#include <arch/debugger.h>
62,6 → 63,8
#include <syscall/syscall.h>
#include <console/console.h>
 
start_info_t start_info;
 
void arch_pre_mm_init(void)
{
// pm_init();
/trunk/kernel/arch/xen32/src/boot/boot.S
34,7 → 34,7
.section __xen_guest
.ascii "GUEST_OS=HelenOS,"
.ascii "XEN_VER=xen-3.0,"
.ascii "HYPERCALL_PAGE=0x2,"
.ascii "HYPERCALL_PAGE=0x0002,"
.ascii "LOADER=generic,"
.ascii "PT_MODE_WRITABLE"
.byte 0
47,19 → 47,21
kernel_image_start:
cld
movl $kernel_stack, %esp # initialize stack pointer
# copy start_info (esi initialized by Xen)
movl $start_info, %edi
movl $START_INFO_SIZE >> 2, %ecx
cld
rep movsb
 
call main_bsp # never returns
 
cli
hlt
 
.data
.global hypercall_page
 
.align 4096
page_directory:
.space 4096, 0
 
kernel_stack_bottom:
.space TEMP_STACK_SIZE
kernel_stack:
.org (0x0002 * PAGE_SIZE)
hypercall_page:
.space PAGE_SIZE
/trunk/kernel/arch/xen32/src/mm/memory_init.c
34,11 → 34,12
 
#include <arch/mm/memory_init.h>
#include <arch/mm/page.h>
#include <arch/boot/boot.h>
#include <print.h>
 
size_t get_memory_size(void)
{
return 0;
return start_info.nr_pages * PAGE_SIZE;
}
 
void memory_print_map(void)