Переглянути джерело

修正在arm cortext的smp时,中断返回时未正确恢复用户tpidr寄存器的问题

shaojinchun 4 роки тому
батько
коміт
16133d5f3b
1 змінених файлів з 3 додано та 2 видалено
  1. 3 2
      libcpu/arm/cortex-a/context_gcc.S

+ 3 - 2
libcpu/arm/cortex-a/context_gcc.S

@@ -155,9 +155,10 @@ rt_hw_context_switch_interrupt:
 
 
     ldr     sp, [r2]
     ldr     sp, [r2]
     mov     r0, r3
     mov     r0, r3
-
+    mov     r4, r0
     bl      rt_cpus_lock_status_restore
     bl      rt_cpus_lock_status_restore
-
+    mov     r0, r4
+    bl      lwp_user_setting_restore
     b       rt_hw_context_switch_exit
     b       rt_hw_context_switch_exit
 
 
 #else /*RT_USING_SMP*/
 #else /*RT_USING_SMP*/