aboutsummaryrefslogtreecommitdiff
path: root/linker.ld
diff options
context:
space:
mode:
authorvetch <vetch97@gmail.com>2019-10-15 15:44:41 +0200
committervetch <vetch97@gmail.com>2019-10-15 15:44:41 +0200
commite20129720adb334f46e329bfbe7090ee7188caac (patch)
tree4a8fab2da509d5e870ddbf64cf6521c110b7e0cf /linker.ld
parent8de2ff74293a583fbf4cd9a87a8bf29c0c93d5a8 (diff)
parent0921cc609a1b411d2b6769a327fa11a675ac3d3a (diff)
downloadrpi-MMU-example-e20129720adb334f46e329bfbe7090ee7188caac.tar.gz
rpi-MMU-example-e20129720adb334f46e329bfbe7090ee7188caac.zip
Merge branch 'bob' into alice
Diffstat (limited to 'linker.ld')
-rw-r--r--linker.ld13
1 files changed, 8 insertions, 5 deletions
diff --git a/linker.ld b/linker.ld
index 0cbd1fb..c9a91df 100644
--- a/linker.ld
+++ b/linker.ld
@@ -2,12 +2,15 @@ ENTRY(_start)
SECTIONS
{
- /* Starts at LOADER_ADDR. */
- /* Warning! Internet says RPis in 32-bit mode load kernel at 0x8000! */
+ /* 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) */
- . = 0x10000;
- /* For AArch64, use . = 0x80000; Unless this too is wrong */
+ /* 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) */
+ . = 0x8000;
+ /* For AArch64, use . = 0x80000; Unless this too is wrong in qemu… */
__start = .;
__text_start = .;
.text :