Hi list,<br><br>I tried to find out what happened to the booting of okl4 at gta02(Free Runner). <br>The problem I met is no more respond after the msg &quot;OKL4 - (provider: Open <br>Kernel ...&quot; is displayed.<br><br>
The build cmd I use is:<br>./tools/build.py machine=gta02 project=examples pyfreeze=false example=hello \<br>pistachio.TOOLCHAIN=gnu_arm_toolchain<br><br>For more verbose debug msgs, I added CONFIG_VERBOSE_INIT and&nbsp; <br>CONFIG_KDB_ON_STARTUP to machines.py, see the attached file. <br>
<br>The other attached file okl4.log is the complete log, including booting and how I find out <br>the problem through KDB.<br><br>The reason why I got no respond is because of PAGE_FAULT when switching from idle <br>thread to _hello_ thread. <br>
<br>We could see the instruction address(pc) when page fault happened is _0x001056a0_ <br>from okl4.log.<br><br>00105640 &lt;hello-device_setup_impl&gt;:<br>&nbsp; ...<br>&nbsp; 105690:&nbsp;&nbsp;&nbsp; e284400c &nbsp;&nbsp;&nbsp; add&nbsp;&nbsp;&nbsp; r4, r4, #12&nbsp;&nbsp;&nbsp; ; 0xc<br>
&nbsp; 105694:&nbsp;&nbsp;&nbsp; daffffef &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ble&nbsp;&nbsp;&nbsp; 105658 &lt;hello-device_setup_impl+0x18&gt;<br>&nbsp; 105698:&nbsp;&nbsp;&nbsp; e5952068 &nbsp;&nbsp;&nbsp; ldr&nbsp;&nbsp;&nbsp;&nbsp; r2, [r5, #104]<br>&nbsp; 10569c:&nbsp;&nbsp;&nbsp; e59fe160 &nbsp;&nbsp;&nbsp;&nbsp; ldr&nbsp;&nbsp;&nbsp;&nbsp; lr, [pc, #352]&nbsp;&nbsp;&nbsp; ; 105804 &lt;hello.text+0x5804&gt;<br>
&nbsp; 1056a0:&nbsp;&nbsp;&nbsp; e5923000 &nbsp;&nbsp;&nbsp; ldr&nbsp;&nbsp;&nbsp;&nbsp; r3, [r2]<br><br>According the asm code, <br><br>r2 = memory(r5+#104) = memory(0x200d98+#104) = memory(0x200e00) = 0x0<br>r3 = memory(r2) = memory(0x0)<br><br>When I dump the memory (0x0), it show ######## always, I thought that&#39;s why <br>
page_fault. I&#39;ll keep trying and any idea/hint how to resolve this problem is very <br>appreciated. ;)<br><br>Captured from okl4.log:<br><br>&gt; go<br>DABT @ 00000000 [00000000], pc = 001056a0, tcb = f0103d20, fs = 5<br>
--- KD# ARM_DATA_ABORT&nbsp; ---<br>&gt; frame<br>== Stack frame: f0023f58 == <br>cpsr = 200000d3, pc = f0010a78, sp&nbsp; = f0023f58, lr&nbsp; = f0010a78<br>r0&nbsp; = f001a944, r1&nbsp; = f9000000, r2&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 85, r3&nbsp; = ffffffff, r4&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<br>
r5&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5, r6&nbsp; = f00243d0, r7&nbsp; =&nbsp;&nbsp; 200df8, r8&nbsp; = f0103d70, r9&nbsp; =&nbsp;&nbsp; 1075b4<br>r10 = f0103d20, r11 =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5, r12 =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<br>&gt; dumpframe<br>tcb/tid/addr [current]: current<br>== Stack frame: f0103d70 == <br>cpsr = 20000010, pc =&nbsp;&nbsp; 1056a0, sp&nbsp; =&nbsp;&nbsp; 1108a8, lr&nbsp; =&nbsp;&nbsp; 10f79c<br>
r0&nbsp; =&nbsp;&nbsp; 200d98, r1&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0, r2&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0, r3&nbsp; =&nbsp;&nbsp; 105c2c, r4&nbsp; =&nbsp;&nbsp; 10f83c<br>r5&nbsp; =&nbsp;&nbsp; 200d98, r6&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8, r7&nbsp; =&nbsp;&nbsp; 200df8, r8&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0, r9&nbsp; =&nbsp;&nbsp; 1075b4<br>r10 = ffffffff, r11 =&nbsp;&nbsp; 10f6b8, r12 =&nbsp;&nbsp; 200db0<br>&gt; go<br>
PF @ 00000000 [00000000], pc = 001056a0, tcb = f0103d20, fs = 5<br>--- KD# ARM_PAGE_FAULT&nbsp; ---<br>&gt; go<br>user read pagefault by f0103d20 at 00000000, ip=001056a0, ksp=f0023f80<br>--- KD# PAGEFAULT_USER&nbsp; ---<br>&gt; go<br>
DABT @ 00000000 [00000000], pc = 001056a0, tcb = f0103d20, fs = 5<br>--- KD# ARM_DATA_ABORT&nbsp; ---<br>&gt; go<br>PF @ 00000000 [00000000], pc = 001056a0, tcb = f0103d20, fs = 5<br>--- KD# ARM_PAGE_FAULT&nbsp; ---<br>&gt; memdump<br>
Dump address [0x200000]: 0x200e00<br>00200e00&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200e10&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200e20&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>
00200e30&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200e40&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200e50&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200e60&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>
00200e70&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200e80&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200e90&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200ea0&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>
00200eb0&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200ec0&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200ed0&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>00200ee0&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>
00200ef0&nbsp; 00000000 00000000 00000000 00000000&nbsp;&nbsp; ........ ........<br>Continue? (Continue/Quit) [continue]: quit<br>&gt; dumpframe<br>tcb/tid/addr [current]: current<br>== Stack frame: f0103d70 == <br>cpsr = 20000010, pc =&nbsp;&nbsp; 1056a0, sp&nbsp; =&nbsp;&nbsp; 1108a8, lr&nbsp; =&nbsp;&nbsp; 10f79c<br>
r0&nbsp; =&nbsp;&nbsp; 200d98, r1&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0, r2&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0, r3&nbsp; =&nbsp;&nbsp; 105c2c, r4&nbsp; =&nbsp;&nbsp; 10f83c<br>r5&nbsp; =&nbsp;&nbsp; 200d98, r6&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8, r7&nbsp; =&nbsp;&nbsp; 200df8, r8&nbsp; =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0, r9&nbsp; =&nbsp;&nbsp; 1075b4<br>r10 = ffffffff, r11 =&nbsp;&nbsp; 10f6b8, r12 =&nbsp;&nbsp; 200db0<br>&gt; memdump<br>
Dump address [0x200e00]: 0x00000000<br>00000000&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000010&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000020&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>
00000030&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000040&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000050&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000060&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>
00000070&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000080&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000090&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>000000a0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>
000000b0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>000000c0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>000000d0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>000000e0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>
000000f0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>Continue? (Continue/Quit) [continue]: continue<br>00000100&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000110&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>
00000120&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000130&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000140&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000150&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>
00000160&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000170&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000180&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>00000190&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>
000001a0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>000001b0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>000001c0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>000001d0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>
000001e0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>000001f0&nbsp; ######## ######## ######## ########&nbsp;&nbsp; ######## ########<br>Continue? (Continue/Quit) [continue]: quit<br>&gt; <br><br>Thanks, <br><br>-Sean Chiang<br>
<br>