Issue
I am making my own Linux distribution. The development is going along nicely however i find it hard to understand the difference between the kernel load address and the entry point.
In order for the kernel to be loaded by uBoot i would think that the memory address where the kernel is loaded would always be the same as where the entry (start point) of the kernel would be when it is executed (started).
But i am guessing that because these are two separated value that do not always have to be the same there is a reason for them to be separated.
Could anyone please explain the difference between the two to me?
Solution
Load Address is RAM location where the kernel binary image is to be copied. Entry Point is the Location of the copied binary to be executed by uboot to boot kernel.
If RAM is mapped at 80000000 and kernel LOAD ADDRESS is 80008000. bootm command uncompress the uImage from copied image location to 80008000 address and then calls the kernel entry point (may be the same address : 80008000) to execute the kernel.
Answered By - Rajeshkumar Answer Checked By - Pedro (WPSolving Volunteer)