diff --git a/EDISOFT/src/common.c b/EDISOFT/src/common.c new file mode 100644 index 0000000000000000000000000000000000000000..b78b9cdd523945718d8b199bfb0b3f821370fe27 --- /dev/null +++ b/EDISOFT/src/common.c @@ -0,0 +1,15 @@ +#include +#include "system.h" + +void die(int task_no, unsigned exitCode) +{ + rtems_status_code status = RTEMS_SUCCESSFUL; + + exitCode = exitCode << 31; + exitCode |= task_no; + status = rtems_message_queue_send(Q_id, &exitCode, 4); + if (status != RTEMS_SUCCESSFUL) { + printk("[TASK %d] Failed to rtems_message_queue_send, status: %d\n", task_no, status); + } + rtems_task_delete(RTEMS_SELF); +}