@@ -19,6 +19,7 @@
* 100% relocatable. Any attempt to do so will result in a crash.
* Please select one of the following when turning on debugging.
*/
+#define DEBUG
#ifdef DEBUG
#if defined(CONFIG_DEBUG_ICEDCC)
@@ -244,7 +245,12 @@ restart: adr r0, LC0
* dtb data will get relocated along with the kernel if necessary.
*/
- ldr lr, [r6, #0] @ potential appended dtb ?
+
+ stmfd sp!, {r0-r1, lr}
+ kputc #'a'
+ kputc #'\n'
+ stmfd sp!, {r0-r1, lr}
+ ldr lr, [r6, #0] @ potential appended dtb ?
#ifndef __ARMEB__
ldr r1, =0xedfe0dd0 @ sig is 0xd00dfeed big endian
#else
@@ -253,10 +259,35 @@ restart: adr r0, LC0
cmp lr, r1
bne dtb_check_done @ not found
- ldr lr, [r8, #0] @ conventionaly passed dtb ?
+ stmfd sp!, {r0-r1, lr}
+ kputc #'b'
+ kputc #'\n'
+ kphex r6, 8
+ kputc #'\n'
+ kphex r8, 8
+ kputc #'\n'
+ stmfd sp!, {r0-r1, lr}
+ cmp r6, r8 @ r8 already pointing to app
+ beq skip_2nd_check @ yes, leave 2nd check
+
+ stmfd sp!, {r0-r1, lr}
+ kputc #'c'
+ kputc #'\n'
+ stmfd sp!, {r0-r1, lr}
+ ldr lr, [r8, #0] @ conventionaly passed dtb ?
+#ifndef __ARMEB__
+ ldr r1, =0xedfe0dd0 @ sig is 0xd00dfeed big endian
+#else
+ ldr r1, =0xd00dfeed
+#endif
cmp lr, r1
- beq dtb_check_done @ yes, do not manage it
+ beq dtb_check_done @ yes, use it instead of appended
+skip_2nd_check:
+ stmfd sp!, {r0-r1, lr}
+ kputc #'d'
+ kputc #'\n'
+ stmfd sp!, {r0-r1, lr}
#ifdef CONFIG_ARM_ATAG_DTB_COMPAT
/*
* OK... Let's do some funky business here.