LOG_D(HW,"eNB_thread: finished, ran %d times.\n",frame);
}
}
#ifdef DEBUG_THREADS
printf("eNB_thread: finished, ran %d times.\n",frame);
#endif
#ifdef HARD_RT
rt_make_soft_real_time();
rt_make_soft_real_time();
#endif
}
// clean task
#ifdef DEBUG_THREADS
printf("Exiting eNB_thread ...");
#endif
// clean task
#ifdef RTAI
rt_task_delete(task);
rt_task_delete(task);
#else
eNB_thread_status=0;
pthread_exit(&eNB_thread_status);
#endif
LOG_D(HW,"Task deleted. returning\n");
return0;
}
#ifdef DEBUG_THREADS
printf("eNB_thread deleted. returning\n");
#endif
return0;
}
/* This is the main UE thread. Initially it is doing a periodic get_frame. One synchronized it gets woken up by the kernel driver using the RTAI message mechanism (rt_send and rt_receive). */
staticvoid*UE_thread(void*arg)
{
/* This is the main UE thread. Initially it is doing a periodic get_frame. One synchronized it gets woken up by the kernel driver using the RTAI message mechanism (rt_send and rt_receive). */