b1c4ba4ab6
Due to the ABI we are using we have to use the earm architecture moniker for the build system to behave correctly. This involves then some headers to move around. There is also a few related Makefile updates as well as minor source code corrections.
49 lines
1.5 KiB
Text
49 lines
1.5 KiB
Text
OUTPUT_ARCH("arm")
|
|
ENTRY(__k_unpaged_MINIX)
|
|
|
|
_kern_phys_base = 0x80200000; /* phys 4MB aligned for convenient remapping */
|
|
_kern_vir_base = 0xF0400000; /* map kernel high for max. user vir space */
|
|
_kern_offset = (_kern_vir_base - _kern_phys_base);
|
|
|
|
__k_unpaged__kern_offset = _kern_offset;
|
|
__k_unpaged__kern_vir_base = _kern_vir_base;
|
|
__k_unpaged__kern_phys_base = _kern_phys_base;
|
|
|
|
SECTIONS
|
|
{
|
|
. = _kern_phys_base;
|
|
__k_unpaged__kern_unpaged_start = .;
|
|
|
|
.unpaged_text ALIGN(4096) : { unpaged_*.o(.text) }
|
|
.unpaged_data ALIGN(4096) : { unpaged_*.o(.data .rodata*) }
|
|
__k_unpaged__kern_unpaged__edata = .;
|
|
__k_unpaged__edata = .;
|
|
.unpaged_bss ALIGN(4096) : { unpaged_*.o(.bss COMMON) }
|
|
__k_unpaged__kern_unpaged_end = .;
|
|
__k_unpaged__end = .;
|
|
|
|
. += _kern_offset;
|
|
|
|
. = ALIGN(4096); usermapped_start = .;
|
|
.usermapped_glo : AT(ADDR(.usermapped_glo) - _kern_offset) { usermapped_glo*.o }
|
|
. = ALIGN(4096); usermapped_nonglo_start = .;
|
|
.usermapped : AT(ADDR(.usermapped) - _kern_offset) { usermapped_*.o }
|
|
. = ALIGN(4096); usermapped_end = .;
|
|
.text : AT(ADDR(.text) - _kern_offset) { *(.text*) }
|
|
_etext = .;
|
|
.data ALIGN(4096) : AT(ADDR(.data) - _kern_offset) { *(.data .rodata* ) }
|
|
. = ALIGN(4096);
|
|
_edata = .;
|
|
.bss ALIGN(4096) : AT(ADDR(.bss) - _kern_offset) { *(.bss* COMMON)
|
|
__k_unpaged__kern_size = . - _kern_vir_base;
|
|
_kern_size = __k_unpaged__kern_size;
|
|
. += 4096;
|
|
}
|
|
_end = .;
|
|
|
|
/DISCARD/ :
|
|
{
|
|
*(.ARM.exidx*)
|
|
}
|
|
|
|
}
|