+++ /dev/null
-ENTRY (_start)
-
-_kernel_base = 0x80000000;
-_usertext_vbase = 0xFFFFE000;
-
-SECTIONS
-{
- . = 0;
- .init :
- {
- *(.init)
- }
- . += _kernel_base;
- .text : AT( ADDR(.text) - _kernel_base )
- {
- *(.text*)
- *(.rodata*)
- }
-
-
- /* HACKS: User accesible .text section */
- . = ALIGN(0x1000);
- gUsertextPhysStart = . - _kernel_base;
- . = _usertext_vbase;
- .usertext : AT( gUsertextPhysStart )
- {
- *(.usertext)
- }
- . += gUsertextPhysStart + _kernel_base - _usertext_vbase;
-
- /* 0x4000 (4 pages) alignment needed for root table */
- .data ALIGN(0x4000) : AT( ADDR(.data) - _kernel_base )
- {
- *(.padata)
- *(.data*)
-
- gKernelSymbols = .;
- *(KEXPORT)
- gKernelSymbolsEnd = .;
-
- gKernelModules = .;
- *(KMODULES)
- gKernelModulesEnd = .;
- }
- .bss : AT( ADDR(.bss) - _kernel_base )
- {
- bss_start = .;
- *(.bss*)
- *(COMMON*)
- . = ALIGN(0x1000);
- *(.pabss)
- bss_end = .;
- }
- gKernelEnd = .;
-}