1 #include "jsp_kernel.h"
5 * gdbserverがターゲットのリセット機能を提供しないため、gdb経由でターゲット
6 * にアプリッケーションをダウンロードすると正しく動作しないことがある。
7 * このルーチンはターゲットを一度だけリセットする。
9 * なお、パラメータ debugが FALSEの場合、リセットはしない
11 void boot_for_gdb(void)
13 // SYSTEM_RESET 0x0007
14 // DOUBLE_FAULT 0x0008
15 // RESET_DOUBLE 0x2000
17 // RESET_SOFTWARE 0x8000
18 if ( enable_boot_for_gdb ){
19 enable_boot_for_gdb = 0; /* 次はブートしない */
20 *__pSWRST = 0x07; /* 内蔵ペリフェラルのリセット */
21 asm volatile( "ssync;" );
22 *__pSWRST = 0x00; /* 内蔵ペリフェラルのリセット解除。 */
23 asm volatile( "ssync;" );
24 *__pSYSCR |= 0x10; /* no boot on core reset */
25 asm volatile( "ssync;" );
26 asm volatile( "raise 1;" ); /* コアリセット */