Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 503 → Rev 506

/kernel/trunk/contrib/conf/msim.conf
7,5 → 7,6
add rwm firstmem 0x0 128k load "/dev/zero"
add rwm mainmem 0x00100000 16M load "kernel.bin"
add rom startmem 0x1fc00000 1k load "load.bin"
add rwm init 0x00110000 64k load "init"
 
add dprinter printer 0x10000000
/kernel/trunk/generic/src/main/main.c
84,6 → 84,9
size_t hardcoded_ktext_size = 0;
size_t hardcoded_kdata_size = 0;
 
__address init_addr = 0;
size_t init_size = 0;
 
/*
* Size of memory in bytes taken by kernel and heap.
*/
/kernel/trunk/arch/mips32/Makefile.inc
41,8 → 41,10
endif
 
KERNEL_LOAD_ADDRESS = 0x80100000
INIT_ADDRESS = 0x80110000
INIT_SIZE = 65536
CFLAGS += -mno-abicalls -G 0 -fno-zero-initialized-in-bss
DEFS += -DMACHINE=${MACHINE} -DKERNEL_LOAD_ADDRESS=${KERNEL_LOAD_ADDRESS}
DEFS += -DMACHINE=${MACHINE} -DKERNEL_LOAD_ADDRESS=${KERNEL_LOAD_ADDRESS} -DINIT_ADDRESS=${INIT_ADDRESS} -DINIT_SIZE=${INIT_SIZE}
 
## Accepted MACHINEs
#
/kernel/trunk/arch/ia32/include/boot/memmapasm.h
File deleted
/kernel/trunk/arch/ia32/include/boot/memmap.h
29,8 → 29,26
#ifndef __ia32_MEMMAP_H__
#define __ia32_MEMMAP_H__
 
/* E820h memory range types - other values*/
/* Free memory */
#define MEMMAP_MEMORY_AVAILABLE 1
/* Not available for OS */
#define MEMMAP_MEMORY_RESERVED 2
/* OS may use it after reading ACPI table */
#define MEMMAP_MEMORY_ACPI 3
/* Unusable, required to be saved and restored across an NVS sleep */
#define MEMMAP_MEMORY_NVS 4
/* Corrupted memory */
#define MEMMAP_MEMORY_UNUSABLE 5
 
#include <arch/boot/memmapasm.h>
/* size of one entry */
#define MEMMAP_E820_RECORD_SIZE 20
/* maximum entries */
#define MEMMAP_E820_MAX_RECORDS 32
 
 
#ifndef __ASM__
 
#include <arch/types.h>
 
struct e820memmap_ {
46,3 → 64,5
extern __u32 e801memorysize; // size of memory in KB
 
#endif
 
#endif
/kernel/trunk/arch/ia32/include/boot/boot.h
33,7 → 33,7
#define BOOT_OFFSET 0x100000
 
#define MULTIBOOT_HEADER_MAGIC 0x1BADB002
#define MULTIBOOT_HEADER_FLAGS 0x00010003
#define MULTIBOOT_HEADER_FLAGS 0x0001000B
 
#define MULTIBOOT_LOADER_MAGIC 0x2BADB002
 
/kernel/trunk/arch/ia32/src/boot/boot.S
27,7 → 27,7
#
 
#include <arch/boot/boot.h>
#include <arch/boot/memmapasm.h>
#include <arch/boot/memmap.h>
#include <arch/mm/page.h>
#include <arch/pm.h>
 
156,6 → 156,19
mem_invalid:
movl %ecx, e801memorysize
bt $3, %eax # mbi->flags[3] (mods_count, mods_addr valid)
jc mods_valid
xorl %ecx, %ecx
xorl %edx, %edx
jmp mods_invalid
mods_valid:
mods_invalid:
movl %ecx, init_addr
movl %edx, init_size
bt $6, %eax # mbi->flags[6] (mmap_length, mmap_addr valid)
jc mmap_valid
/kernel/trunk/arch/ia32/src/boot/memmap.S
27,7 → 27,7
*/
 
 
#include <arch/boot/memmapasm.h>
#include <arch/boot/memmap.h>
 
E820_SMAP = 0x534d4150