comparison gsm-fw/nucleus/tct.S @ 570:962f0d3a4e7e

gsm-fw/nucleus/tct.S: preparations for hooking in GSM small sleep just like how TI did it
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Sun, 10 Aug 2014 19:24:56 +0000
parents afceeeb2cba1
children
comparison
equal deleted inserted replaced
569:9df89f93d311 570:962f0d3a4e7e
80 ****************************** 80 ******************************
81 * Define constants used in low-level initialization. 81 * Define constants used in low-level initialization.
82 */ 82 */
83 83
84 #include "asm_defs.h" 84 #include "asm_defs.h"
85 #include "../include/config.h"
85 86
86 .code 32 87 .code 32
87 88
88 /* TCT_System_Limit is a global variable defined in this module */ 89 /* TCT_System_Limit is a global variable defined in this module */
89 90
954 955
955 956
956 @ Wait until a thread (task or HISR) is available to execute. 957 @ Wait until a thread (task or HISR) is available to execute.
957 @ do 958 @ do
958 @ { 959 @ {
960 .globl TCT_Schedule_Loop
959 TCT_Schedule_Loop: 961 TCT_Schedule_Loop:
960 962
961 @ } while ((!TCD_Execute_HISR) && (!TCD_Execute_Task)); 963 @ } while ((!TCD_Execute_HISR) && (!TCD_Execute_Task));
962 964
963 LDR r0,[r2, #0] @ Pickup highest priority HISR ptr 965 LDR r0,[r2, #0] @ Pickup highest priority HISR ptr
964 CMP r0,#0 @ Is there a HISR active? 966 CMP r0,#0 @ Is there a HISR active?
965 BNE TCT_Schedule_Thread @ Found an HISR 967 BNE TCT_Schedule_Thread @ Found an HISR
966 LDR r0,[r3, #0] @ Pickup highest priority Task ptr 968 LDR r0,[r3, #0] @ Pickup highest priority Task ptr
967 CMP r0,#0 @ Is there a task active? 969 CMP r0,#0 @ Is there a task active?
968 BEQ TCT_Schedule_Loop @ If not, continue the search 970 #if CONFIG_INCLUDE_L1
971 BEQ _GSM_Small_Sleep
972 #else
973 BEQ TCT_Schedule_Loop @ If not, continue the search
974 #endif
969 975
970 @ Yes, either a task or an HISR is ready to execute. Lockout 976 @ Yes, either a task or an HISR is ready to execute. Lockout
971 @ interrupts while the thread is transferred to. 977 @ interrupts while the thread is transferred to.
972 978
973 TCT_Schedule_Thread: 979 TCT_Schedule_Thread: