aboutsummaryrefslogtreecommitdiff
path: root/linker.ld
diff options
context:
space:
mode:
Diffstat (limited to 'linker.ld')
-rw-r--r--linker.ld107
1 files changed, 0 insertions, 107 deletions
diff --git a/linker.ld b/linker.ld
deleted file mode 100644
index 01eda35..0000000
--- a/linker.ld
+++ /dev/null
@@ -1,107 +0,0 @@
-ENTRY(_start)
-
-SECTIONS
-{
- /* Starts at LOADER_ADDR, which is 0x8000 - that's where RPis in */
- /* 32-bit mode load kernel at. */
- /* My experiments do, however, show, that qemu emulating RPi2 */
- /* loads the kernel at 0x10000! (took some pain to find out). */
- /* Since we're using a bootloader now, we can compile the kernel */
- /* for 0x8000 and bootloader will load it properly (although it */
- /* itself still has to be compiled for 0x10000) */
- /* rpi-open-firmware, ont he other hand, loads kernel at 0x2000000 */
- /* This issue is also to be avoided by the use of bootloader */
- . = 0x8000;
- /* For AArch64, use . = 0x80000; Unless this too is wrong in qemu… */
-
- __start = .;
- __text_start = .;
- .text :
- {
- KEEP(*(.text.boot))
- *(.text)
- }
- . = ALIGN(4096); /* align to page size */
- __text_end = .;
-
- __rodata_start = .;
- .rodata :
- {
- *(.rodata)
- }
- . = ALIGN(4096); /* align to page size */
- __rodata_end = .;
-
- __data_start = .;
- .data :
- {
- *(.data)
- }
- . = ALIGN(4096); /* align to page size */
- __data_end = .;
-
- __bss_start = .;
- .bss :
- {
- bss = .;
- *(.bss)
- }
- . = ALIGN(4096); /* align to page size */
- __bss_end = .;
- __bss_size = __bss_end - __bss_start;
-
-
-
- /* Here come the definitions for renamed sections */
- __renamed_start = .;
- __renamed_text_start = .;
- .renamed_text :
- {
- *(.renamed_text)
- }
- . = ALIGN(4096); /* align to page size */
- __renamed_text_end = .;
-
- __renamed_rodata_start = .;
- .renamed_rodata :
- {
- *(.renamed_rodata)
- }
- . = ALIGN(4096); /* align to page size */
- __renamed_rodata_end = .;
-
- __renamed_data_start = .;
- .renamed_data :
- {
- *(.renamed_data)
- }
- . = ALIGN(4096); /* align to page size */
- __renamed_data_end = .;
-
- __renamed_bss_start = .;
- .renamed_bss :
- {
- renamed_bss = .;
- *(.renamed_bss)
- }
- . = ALIGN(4096); /* align to page size */
- __renamed_bss_end = .;
- __renamed_bss_size = __renamed_bss_end - __renamed_bss_start;
- __renamed_end = .;
- __renamed_size = __renamed_end - __renamed_start;
-
-
- . = ALIGN(4096); /* align to page size */
- __interrupt_vectors_start = .;
- .interrupt_vectors :
- {
- interrupt_vectors = .;
- *(.interrupt_vectors.text)
- *(.interrupt_vectors.data)
- }
- . = ALIGN(4096); /* align to page size */
- __interrupt_vectors_end = .;
- __interrupt_vectors_size = __interrupt_vectors_end - __interrupt_vectors_start;
-
- __end = .;
-}