reset doc added for ARM
This commit is contained in:
parent
578433a5a8
commit
be65b56a89
|
@ -6,4 +6,28 @@
|
|||
|
||||
FIXME
|
||||
|
||||
@par What's happens when the reset signal is gone
|
||||
|
||||
@note Code running immediately after reset runs at an address it is not linked
|
||||
to: "runtime address != link address". You should only use branches and
|
||||
do not refer to fixed data. This implies the use of assembler code only.
|
||||
|
||||
The ARM CPU starts at lable <reset> in one of the corresponding start-*.S
|
||||
files. After some basic hardware setup it can call a function
|
||||
<arch_init_lowlevel> if not disabled. This call is intended to give all
|
||||
developers a chance to use a standard reset vector file, but also do some
|
||||
special things required only on their specific CPU.
|
||||
|
||||
After handling some MMU related things <board_init_lowlevel> can be called (if
|
||||
not disabled). This is a board specific function for SDRAM setup for example.
|
||||
As its board specific, your can do whatever you need to bring your board up.
|
||||
|
||||
When <board_init_lowlevel> returns it will be assumed there is now a working
|
||||
RAM that can be used for all further steps.
|
||||
|
||||
Next step is relocation of UBoot itself. It gets copied to RAM and the last
|
||||
assembler instruction is a jump into <start_uboot>. This target address is
|
||||
the first C instruction in UBoot. At this point of time:
|
||||
"runtime address == link address".
|
||||
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue