Browse Source

add ls2k bsp config

bigmagic 5 years ago
parent
commit
c024e2e485

+ 3 - 6
bsp/ls2kdev/.config

@@ -20,13 +20,10 @@ CONFIG_RT_USING_HOOK=y
 CONFIG_RT_USING_IDLE_HOOK=y
 CONFIG_RT_IDLE_HOOK_LIST_SIZE=4
 CONFIG_IDLE_THREAD_STACK_SIZE=2048
-CONFIG_RT_USING_TIMER_SOFT=y
-CONFIG_RT_TIMER_THREAD_PRIO=20
-CONFIG_RT_TIMER_THREAD_STACK_SIZE=2048
+# CONFIG_RT_USING_TIMER_SOFT is not set
 CONFIG_RT_DEBUG=y
 # CONFIG_RT_DEBUG_COLOR is not set
-CONFIG_RT_DEBUG_INIT_CONFIG=y
-CONFIG_RT_DEBUG_INIT=1
+# CONFIG_RT_DEBUG_INIT_CONFIG is not set
 # CONFIG_RT_DEBUG_THREAD_CONFIG is not set
 # CONFIG_RT_DEBUG_SCHEDULER_CONFIG is not set
 # CONFIG_RT_DEBUG_IPC_CONFIG is not set
@@ -65,7 +62,7 @@ CONFIG_RT_USING_DEVICE=y
 # CONFIG_RT_USING_DEVICE_OPS is not set
 # CONFIG_RT_USING_INTERRUPT_INFO is not set
 CONFIG_RT_USING_CONSOLE=y
-CONFIG_RT_CONSOLEBUF_SIZE=128
+CONFIG_RT_CONSOLEBUF_SIZE=256
 CONFIG_RT_CONSOLE_DEVICE_NAME="uart"
 CONFIG_RT_VER_NUM=0x40003
 # CONFIG_RT_USING_CPU_FFS is not set

+ 1 - 1
bsp/ls2kdev/applications/main.c

@@ -12,6 +12,6 @@
 
 int main(int argc, char** argv)
 {   
-    rt_kprintf("ls2k1000:hello rtthread!\n");
+    rt_kprintf("Hi, this is RT-Thread!!\n");
     return 0;
 }

+ 1 - 6
bsp/ls2kdev/rtconfig.h

@@ -16,12 +16,7 @@
 #define RT_USING_IDLE_HOOK
 #define RT_IDLE_HOOK_LIST_SIZE 4
 #define IDLE_THREAD_STACK_SIZE 2048
-#define RT_USING_TIMER_SOFT
-#define RT_TIMER_THREAD_PRIO 20
-#define RT_TIMER_THREAD_STACK_SIZE 2048
 #define RT_DEBUG
-#define RT_DEBUG_INIT_CONFIG
-#define RT_DEBUG_INIT 1
 
 /* Inter-Thread communication */
 
@@ -41,7 +36,7 @@
 
 #define RT_USING_DEVICE
 #define RT_USING_CONSOLE
-#define RT_CONSOLEBUF_SIZE 128
+#define RT_CONSOLEBUF_SIZE 256
 #define RT_CONSOLE_DEVICE_NAME "uart"
 #define RT_VER_NUM 0x40003
 #define ARCH_MIPS64

+ 3 - 3
libcpu/mips/common/exception.c

@@ -117,14 +117,14 @@ int rt_hw_exception_init(void)
 
 void rt_general_exc_dispatch(struct pt_regs *regs)
 {
-    rt_ubase_t cause, exccode;
+    rt_ubase_t exccode = 0;
 
-    exccode = (cause & CAUSEF_EXCCODE) >> CAUSEB_EXCCODE;
 
     if (exccode == 0) {
         rt_ubase_t status, pending;
         status = read_c0_status();
-        pending = (cause & CAUSEF_IP) & (status & ST0_IM);
+
+        pending =  (CAUSEF_IP) & (status & ST0_IM);
         if (pending & CAUSEF_IP0)
             rt_do_mips_cpu_irq(0);
         if (pending & CAUSEF_IP1)

+ 2 - 2
libcpu/mips/common/stackframe.h

@@ -60,11 +60,11 @@
     mfhi	v1
     LONG_S	$8, PT_R8(sp)
     LONG_S	$9, PT_R9(sp)
-    LONG_S	v1, PT_HI(sp)
+    sw	v1, PT_HI(sp)
     mflo	v1
     LONG_S	$10, PT_R10(sp)
     LONG_S	$11, PT_R11(sp)
-    LONG_S	v1,  PT_LO(sp)
+    sw	v1,  PT_LO(sp)
     LONG_S	$12, PT_R12(sp)
     LONG_S	$13, PT_R13(sp)
     LONG_S	$14, PT_R14(sp)