Various updates

This commit is contained in:
Kai-Bjoern Gemlau
2020-06-05 10:10:27 +02:00
parent 6ae5945307
commit daba348e23
3 changed files with 19 additions and 3 deletions

View File

@@ -24,7 +24,7 @@ P1_PORT=$((10000+$RANDOM))
P2_TITLE=ARM_AMP_CORE0 P2_TITLE=ARM_AMP_CORE0
P3_TMP=/tmp P3_TMP=/tmp
P4_SYS=/tools/lauterbach/r_2018_02 P4_SYS=/tools/lauterbach/r_2018_02
P9_TCF="$((20000+$USER_ID_SUFFIX))" P9_TCF="$((20000+$RANDOM))"
if [[ ! ${1} ]]; then if [[ ! ${1} ]]; then
echo "Please specify lauterbach hostname" echo "Please specify lauterbach hostname"

Binary file not shown.

View File

@@ -36,6 +36,7 @@ static void _GT_RunableLoop (GT_TASK_T *pMyOwnTask) __attribute__ ((always_inlin
/** /**
* Weak functions for hooks that are not implemented * Weak functions for hooks that are not implemented
*/ */
__attribute__((weak)) void GT_TaskActivationHook(GT_TASK_T *pMyOwnTask) {(void)pMyOwnTask;return;}
__attribute__((weak)) void GT_TaskStartHook(GT_TASK_T *pMyOwnTask) {(void)pMyOwnTask;return;} __attribute__((weak)) void GT_TaskStartHook(GT_TASK_T *pMyOwnTask) {(void)pMyOwnTask;return;}
__attribute__((weak)) void GT_TaskEndHook(GT_TASK_T *pMyOwnTask){return;} __attribute__((weak)) void GT_TaskEndHook(GT_TASK_T *pMyOwnTask){return;}
__attribute__((weak)) void GT_RunableStartHook(GT_TASK_T *pMyOwnTask){(void)pMyOwnTask;return;} __attribute__((weak)) void GT_RunableStartHook(GT_TASK_T *pMyOwnTask){(void)pMyOwnTask;return;}
@@ -43,6 +44,7 @@ __attribute__((weak)) void GT_RunableEndHook(GT_TASK_T *pMyOwnTask){return;}
__attribute__((weak)) void GT_TaskSwHook (GT_TASK_T *pMyOwnTask){return;} __attribute__((weak)) void GT_TaskSwHook (GT_TASK_T *pMyOwnTask){return;}
__attribute__((weak)) void GT_InitHook(GT_INIT_T * pInit){return;} __attribute__((weak)) void GT_InitHook(GT_INIT_T * pInit){return;}
__attribute__((weak)) void GT_StopHook(void){return;} __attribute__((weak)) void GT_StopHook(void){return;}
__attribute__((weak)) void GT_TaskMissHook(GT_TASK_T *pMyOwnTask) {(void)pMyOwnTask;return;}
__attribute__((weak)) volatile void GT_CalibrateStartHook(void){return;} __attribute__((weak)) volatile void GT_CalibrateStartHook(void){return;}
__attribute__((weak)) volatile void GT_CalibrateEndHook(void){return;} __attribute__((weak)) volatile void GT_CalibrateEndHook(void){return;}
@@ -83,7 +85,9 @@ inline static void _GT_TaskLoop(GT_TASK_T *pMyOwnTask)
/* /*
* Call task start hook * Call task start hook
*/ */
OS_ENTER_CRITICAL();
GT_TaskStartHook(pMyOwnTask); GT_TaskStartHook(pMyOwnTask);
OS_EXIT_CRITICAL();
/* /*
* Determine CET * Determine CET
*/ */
@@ -95,7 +99,9 @@ inline static void _GT_TaskLoop(GT_TASK_T *pMyOwnTask)
/* /*
* Call task end hook * Call task end hook
*/ */
OS_ENTER_CRITICAL();
GT_TaskEndHook(pMyOwnTask); GT_TaskEndHook(pMyOwnTask);
OS_EXIT_CRITICAL();
/* /*
* Increment sequence number * Increment sequence number
*/ */
@@ -347,9 +353,19 @@ void GT_Stop(void)
} }
void GT_ActivateTask(CPU_INT08U id){ void GT_ActivateTask(CPU_INT08U id){
CPU_SR cpu_sr;
GT_RT_VAL_T *internal = &GT_TaskTable[id].Internal;
if(GT_TaskTable[id].ActivationType != GT_ACT_OFF){ if(GT_TaskTable[id].ActivationType != GT_ACT_OFF){
OSQPost(GT_TaskTable[id].Internal.pActQ,(void *)0); OS_ENTER_CRITICAL();
GT_TaskTable[id].Internal.ActCounter++; GT_TaskActivationHook(&GT_Tasks[id]);
OS_EXIT_CRITICAL();
if(internal->ActCounter != internal->SeqNr){
OS_ENTER_CRITICAL();
GT_TaskMissHook(&GT_Tasks[id]);
OS_EXIT_CRITICAL();
}
OSQPost(internal->pActQ,(void *)0);
internal->ActCounter++;
} }
} }