Blackfin: clarify relocation comment during init
authorMike Frysinger <vapier@gentoo.org>
Sun, 12 Oct 2008 01:40:26 +0000 (21:40 -0400)
committerMike Frysinger <vapier@gentoo.org>
Wed, 28 Jan 2009 18:26:14 +0000 (13:26 -0500)
People often ask questions about the init process and when things go
from flash to relocated base, so clarify the comments a bit.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
cpu/blackfin/start.S

index 8617c98..6c8def4 100644 (file)
@@ -125,9 +125,11 @@ ENTRY(_start)
         */
        r6 = 1 (x);
 
-       /* Relocate from wherever are (FLASH/RAM/etc...) to the hardcoded
+       /* Relocate from wherever we are (FLASH/RAM/etc...) to the hardcoded
         * monitor location in the end of RAM.  We know that memcpy() only
-        * uses registers, so it is safe to call here.
+        * uses registers, so it is safe to call here.  Note that this only
+        * copies to external memory ... we do not start executing out of
+        * it yet (see "lower to 15" below).
         */
        serial_early_puts("Relocate");
        call _get_pc;
@@ -172,7 +174,9 @@ ENTRY(_start)
         * setting the 15 handler to ".Lenable_nested", raising the 15
         * interrupt, and then returning from the highest interrupt
         * level to the dummy "jump" until the interrupt controller
-        * services the pending 15 interrupt.
+        * services the pending 15 interrupt.  If executing out of
+        * flash, these steps also changes the code flow from flash
+        * to external memory.
         */
        serial_early_puts("Lower to 15");
        r0 = r7;