diff --git a/libcpu/arm/s3c24x0/mmu.c b/libcpu/arm/s3c24x0/mmu.c index 0cbac7f93428d5861c4154c57ae78a7d5149590e..36b3eb3c9ac31da3649d0abcaec398533a4cfd48 100644 --- a/libcpu/arm/s3c24x0/mmu.c +++ b/libcpu/arm/s3c24x0/mmu.c @@ -17,7 +17,7 @@ #include "s3c24x0.h" // #define _MMUTT_STARTADDRESS 0x30080000 -#define _MMUTT_STARTADDRESS 0x30200000 +#define _MMUTT_STARTADDRESS 0x30400000 #define DESC_SEC (0x2|(1<<4)) #define CB (3<<2) //cache_on, write_back diff --git a/libcpu/arm/s3c24x0/system_clock.c b/libcpu/arm/s3c24x0/system_clock.c index 38ffa5d23393a9f0d714727939fae74b8ae6674a..bd2a6690db7fd45013ca86be838e8ddbe16f28d9 100644 --- a/libcpu/arm/s3c24x0/system_clock.c +++ b/libcpu/arm/s3c24x0/system_clock.c @@ -101,8 +101,8 @@ void rt_hw_set_divider(rt_uint8_t hdivn, rt_uint8_t pdivn) void rt_hw_clock_init(void) { LOCKTIME = 0xFFFFFFFF; - rt_hw_set_divider(HDIVN, PDIVN); - rt_hw_set_upll_clock(UPL_SDIV, UPL_PDIV, UPL_MDIV); rt_hw_set_mpll_clock(MPL_SDIV, MPL_PDIV, MPL_MIDV); + rt_hw_set_upll_clock(UPL_SDIV, UPL_PDIV, UPL_MDIV); + rt_hw_set_divider(HDIVN, PDIVN); } diff --git a/libcpu/arm/s3c24x0/trap.c b/libcpu/arm/s3c24x0/trap.c index 65f47af2428ff55b4cb1a9e04f9f3f3e8ab03560..a8876a54e99dadcddb2ff13dfb4c6a62a25c4845 100644 --- a/libcpu/arm/s3c24x0/trap.c +++ b/libcpu/arm/s3c24x0/trap.c @@ -57,8 +57,12 @@ void rt_hw_trap_udef(struct rt_hw_register *regs) rt_kprintf("undefined instruction\n"); rt_kprintf("thread - %s stack:\n", rt_current_thread->name); - rt_hw_backtrace((rt_uint32_t *)regs->fp, (rt_uint32_t)rt_current_thread->entry); +#ifdef RT_USING_FINSH + list_thread(); +#endif + while (1); + rt_hw_cpu_shutdown(); } @@ -93,8 +97,12 @@ void rt_hw_trap_pabt(struct rt_hw_register *regs) rt_kprintf("prefetch abort\n"); rt_kprintf("thread - %s stack:\n", rt_current_thread->name); - rt_hw_backtrace((rt_uint32_t *)regs->fp, (rt_uint32_t)rt_current_thread->entry); +#ifdef RT_USING_FINSH + list_thread(); +#endif + while (1); + rt_hw_cpu_shutdown(); } @@ -112,8 +120,12 @@ void rt_hw_trap_dabt(struct rt_hw_register *regs) rt_kprintf("data abort\n"); rt_kprintf("thread - %s stack:\n", rt_current_thread->name); - rt_hw_backtrace((rt_uint32_t *)regs->fp, (rt_uint32_t)rt_current_thread->entry); +#ifdef RT_USING_FINSH + list_thread(); +#endif + while (1); + rt_hw_cpu_shutdown(); }