What does LOADADDR=0x20008000 mean in linux kernel make command? and what is kernel load address?
Chan Kim
ckim at etri.re.kr
Wed Oct 27 05:54:10 EDT 2021
Hello,
For anyone's help..
I asked this question to unix stackexchage and received an answer.
https://unix.stackexchange.com/questions/674155/what-does-loadaddr-0x2000800
0-mean-in-linux-kernel-make-command
regards,
Chan Kim
From: Chan Kim <ckim at etri.re.kr>
Sent: Thursday, October 21, 2021 3:00 PM
To: kernelnewbies at kernelnewbies.org
Subject: What does LOADADDR=0x20008000 mean in linux kernel make command?
and what is kernel load address?
Hello all,
I'm learning u-boot these days and have a question.
Using qemu model, I could (using qemu) load the "Image" (for arm64) on
memory location I want and I could run the kernel booting using `booti
ker_add initrd_addr dtb_addr` command.
As you know in arm64, the uImage format is not supported.
Then, when building linux kernel for arm (32 bit) using u-boot, what does
"make LOADADDR=0x20008000 uImage" mean?
Regardless of this LOADADDR, we can load (from SD card or network) the
uImage anywhere we want using u-boot shell. Then what is this LOADADDR?
Does it mean that when we run `bootm` command, the u-boot program relocates
the kernel image inside the uImage to 0x20008000?
(and the kernel built not using position independent, PC-relative
addressing..using hard absolute addresses..)
Some years ago, we used kernel start address during the build and I had to
load the kernel image exactly on that address. But this time I could load
'Image' anywhere I want and could run it. Why?
Is it because I (not knowingly) compiled the arm64 'Image' using position
independent address(-PIE option)?
If someone with expertise could explain to me what's happening here, I would
really really appreciate it.
Thank you.
Best regards,
Chan Kim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20211027/e8b6266d/attachment.html>
More information about the Kernelnewbies
mailing list