source: trunk/hal/tsar_mips32/kernel.ld @ 623

Last change on this file since 623 was 623, checked in by alain, 5 years ago

Introduce three new types of vsegs (KCODE,KDATA,KDEV)
to map the kernel vsegs in the process VSL and GPT.
This now used by both the TSAR and the I86 architectures.

File size: 1.1 KB
RevLine 
[296]1/***************************************************************************************
2 * This is the linker script for the ALMOS-MKH kernel code on the TSAR architecture.
3 * It describes the memory layout for the "kernel.elf" binary file, containing three
4 * loadable segments, that MUST be identity mapped for the TSAR architecture.
5 *
[623]6 * WARNING : the seg_kentry_base and seg_kcode_base defined below must be coherent
[296]7 * with the values defined in the boot_config.h file used by the TSAR bootloader.
8 **************************************************************************************/
[63]9
[406]10/* Define the kernel code base addresses */
[63]11
[570]12seg_kcode_base  = 0x00008000;
13seg_kentry_base = 0x00004000;
[63]14
[279]15/* Set the entry point (e_entry field in the "kernel.elf" file header) */
16
[63]17ENTRY(kernel_init)
18
[279]19/* Describe how to group the sections */
20
[63]21SECTIONS
22{
[279]23        . = seg_kcode_base;
[63]24        seg_kcode :
25        {
26                *(.text)
27                *(.rodata*)
28        }
29
30        . = ALIGN(0x1000);
31
32        seg_kdata :
33        {
34                *(.kinfo)
35                *(.kidle)
36                *(.kdata*)
37                *(.data*)
38        }
[279]39
[296]40    . = seg_kentry_base;
41    seg_kentry :
[279]42    {
[296]43                *(.kentry)
[406]44                *(.switch)
[279]45    }
[63]46}
Note: See TracBrowser for help on using the repository browser.