56 #include <rtems/test.h> 90 RECEIVE_COND_SATSIFIED,
91 RECEIVE_COND_UNSATISFIED
92 } ReceiveConditionStates;
250 RtemsEventReqSendReceive_Instance;
252 static const char *
const RtemsEventReqSendReceive_PreDesc_Id[] = {
258 static const char *
const RtemsEventReqSendReceive_PreDesc_Send[] = {
268 static const char *
const RtemsEventReqSendReceive_PreDesc_ReceiverState[] = {
280 static const char *
const RtemsEventReqSendReceive_PreDesc_Satisfy[] = {
286 static const char *
const *
const RtemsEventReqSendReceive_PreDesc[] = {
287 RtemsEventReqSendReceive_PreDesc_Id,
288 RtemsEventReqSendReceive_PreDesc_Send,
289 RtemsEventReqSendReceive_PreDesc_ReceiverState,
290 RtemsEventReqSendReceive_PreDesc_Satisfy,
294 #define INPUT_EVENTS ( RTEMS_EVENT_5 | RTEMS_EVENT_23 ) 296 #define WORKER_ATTRIBUTES RTEMS_DEFAULT_ATTRIBUTES 298 #define MAX_TLS_SIZE RTEMS_ALIGN_UP( 64, RTEMS_TASK_STORAGE_ALIGNMENT ) 311 .initial_priority = PRIO_LOW,
312 .storage_area = WorkerStorage,
313 .storage_size =
sizeof( WorkerStorage ),
314 .maximum_thread_local_storage_size = MAX_TLS_SIZE,
316 .attributes = WORKER_ATTRIBUTES
319 static rtems_id CreateWakeupSema(
void )
331 T_assert_rsc_success( sc );
336 static void DeleteWakeupSema(
rtems_id id )
351 T_quiet_rsc_success( sc );
359 T_quiet_rsc_success( sc );
377 static bool IsSatisfiedFlags(
Context *ctx )
379 return EventReadyAgain(
385 static bool IsSatisfiedState(
Context *ctx )
390 static void SendAction(
Context *ctx )
397 log = T_thread_switch_record( NULL );
403 bool ( *is_satsified )(
Context * )
408 if ( ( *is_satsified )( ctx ) ) {
420 T_ne_u32( missing, 0 );
447 T_eq_u32( prio, PRIO_LOW );
461 Send( ctx, IsSatisfiedState );
485 T_quiet_rsc_success( sc );
490 static void RtemsEventReqSendReceive_Cleanup(
Context *ctx );
492 static void InterruptPrepare(
void *arg )
494 RtemsEventReqSendReceive_Cleanup( arg );
497 static void InterruptAction(
void *arg )
511 static void InterruptContinue(
Context *ctx )
516 T_quiet_rsc_success( sc );
519 static T_interrupt_test_state Interrupt(
void *arg )
523 T_interrupt_test_state next_state;
524 T_interrupt_test_state previous_state;
529 if ( IntendsToBlockForEvent( ctx, flags ) ) {
530 next_state = T_INTERRUPT_TEST_DONE;
531 }
else if ( BlockedForEvent( ctx, flags ) ) {
532 next_state = T_INTERRUPT_TEST_LATE;
534 next_state = T_INTERRUPT_TEST_EARLY;
537 previous_state = T_interrupt_test_change_state(
538 T_INTERRUPT_TEST_ACTION,
542 if ( previous_state == T_INTERRUPT_TEST_ACTION ) {
543 if ( next_state == T_INTERRUPT_TEST_DONE ) {
544 Send( ctx, IsSatisfiedFlags );
546 InterruptContinue( ctx );
554 .prepare = InterruptPrepare,
555 .action = InterruptAction,
556 .interrupt = Interrupt,
557 .max_iteration_count = 10000
560 static void RtemsEventReqSendReceive_Pre_Id_Prepare(
562 RtemsEventReqSendReceive_Pre_Id state
566 case RtemsEventReqSendReceive_Pre_Id_InvId: {
572 case RtemsEventReqSendReceive_Pre_Id_Task: {
577 case RtemsEventReqSendReceive_Pre_Id_NA:
582 static void RtemsEventReqSendReceive_Pre_Send_Prepare(
584 RtemsEventReqSendReceive_Pre_Send state
588 case RtemsEventReqSendReceive_Pre_Send_Zero: {
593 case RtemsEventReqSendReceive_Pre_Send_Unrelated: {
598 case RtemsEventReqSendReceive_Pre_Send_Any: {
603 case RtemsEventReqSendReceive_Pre_Send_All: {
608 case RtemsEventReqSendReceive_Pre_Send_MixedAny: {
613 case RtemsEventReqSendReceive_Pre_Send_MixedAll: {
618 case RtemsEventReqSendReceive_Pre_Send_NA:
623 static void RtemsEventReqSendReceive_Pre_ReceiverState_Prepare(
625 RtemsEventReqSendReceive_Pre_ReceiverState state
629 case RtemsEventReqSendReceive_Pre_ReceiverState_NotWaiting: {
635 case RtemsEventReqSendReceive_Pre_ReceiverState_Poll: {
642 case RtemsEventReqSendReceive_Pre_ReceiverState_Timeout: {
649 case RtemsEventReqSendReceive_Pre_ReceiverState_Lower: {
656 case RtemsEventReqSendReceive_Pre_ReceiverState_Equal: {
663 case RtemsEventReqSendReceive_Pre_ReceiverState_Higher: {
670 case RtemsEventReqSendReceive_Pre_ReceiverState_Other: {
677 case RtemsEventReqSendReceive_Pre_ReceiverState_Intend: {
683 case RtemsEventReqSendReceive_Pre_ReceiverState_NA:
688 static void RtemsEventReqSendReceive_Pre_Satisfy_Prepare(
690 RtemsEventReqSendReceive_Pre_Satisfy state
694 case RtemsEventReqSendReceive_Pre_Satisfy_All: {
699 case RtemsEventReqSendReceive_Pre_Satisfy_Any: {
704 case RtemsEventReqSendReceive_Pre_Satisfy_NA:
709 static void RtemsEventReqSendReceive_Post_SendStatus_Check(
711 RtemsEventReqSendReceive_Post_SendStatus state
715 case RtemsEventReqSendReceive_Post_SendStatus_Ok: {
720 case RtemsEventReqSendReceive_Post_SendStatus_InvId: {
725 case RtemsEventReqSendReceive_Post_SendStatus_NA:
730 static void RtemsEventReqSendReceive_Post_ReceiveStatus_Check(
732 RtemsEventReqSendReceive_Post_ReceiveStatus state
736 case RtemsEventReqSendReceive_Post_ReceiveStatus_None: {
738 T_eq_u32( GetPendingEvents( ctx ), 0 );
742 case RtemsEventReqSendReceive_Post_ReceiveStatus_Pending: {
748 case RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout: {
755 case RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied: {
763 T_eq_u32( GetPendingEvents( ctx ), ctx->
events_to_send & ~INPUT_EVENTS );
767 case RtemsEventReqSendReceive_Post_ReceiveStatus_Unsatisfied: {
774 case RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked: {
780 case RtemsEventReqSendReceive_Post_ReceiveStatus_NA:
785 static void RtemsEventReqSendReceive_Post_SenderPreemption_Check(
787 RtemsEventReqSendReceive_Post_SenderPreemption state
796 case RtemsEventReqSendReceive_Post_SenderPreemption_No: {
802 T_le_sz( log->recorded, 1 );
804 for ( i = 0; i < log->recorded; ++i ) {
805 T_ne_u32( log->events[ i ].executing, ctx->
worker_id );
806 T_eq_u32( log->events[ i ].heir, ctx->
runner_id );
811 case RtemsEventReqSendReceive_Post_SenderPreemption_Yes: {
812 T_eq_sz( log->recorded, 2 );
813 T_eq_u32( log->events[ 0 ].heir, ctx->
runner_id );
814 T_eq_u32( log->events[ 1 ].heir, ctx->
worker_id );
818 case RtemsEventReqSendReceive_Post_SenderPreemption_NA:
823 static void RtemsEventReqSendReceive_Setup(
830 memset( ctx, 0,
sizeof( *ctx ) );
839 #if defined(RTEMS_SMP) 848 T_eq_u32( prio, PRIO_HIGH );
851 T_assert_rsc_success( sc );
854 T_assert_rsc_success( sc );
857 static void RtemsEventReqSendReceive_Setup_Wrap(
void *arg )
863 RtemsEventReqSendReceive_Setup( ctx );
866 static void RtemsEventReqSendReceive_Teardown(
876 T_eq_u32( prio, PRIO_NORMAL );
887 static void RtemsEventReqSendReceive_Teardown_Wrap(
void *arg )
893 RtemsEventReqSendReceive_Teardown( ctx );
896 static size_t RtemsEventReqSendReceive_Scope(
void *arg,
char *buf,
size_t n )
903 return T_get_scope( RtemsEventReqSendReceive_PreDesc, buf, n, ctx->
pcs );
909 static T_fixture RtemsEventReqSendReceive_Fixture = {
910 .setup = RtemsEventReqSendReceive_Setup_Wrap,
912 .teardown = RtemsEventReqSendReceive_Teardown_Wrap,
913 .scope = RtemsEventReqSendReceive_Scope,
914 .initial_context = &RtemsEventReqSendReceive_Instance
917 static const uint8_t RtemsEventReqSendReceive_TransitionMap[][ 3 ] = {
919 RtemsEventReqSendReceive_Post_SendStatus_InvId,
920 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
921 RtemsEventReqSendReceive_Post_SenderPreemption_No
923 RtemsEventReqSendReceive_Post_SendStatus_InvId,
924 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
925 RtemsEventReqSendReceive_Post_SenderPreemption_No
927 RtemsEventReqSendReceive_Post_SendStatus_InvId,
928 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
929 RtemsEventReqSendReceive_Post_SenderPreemption_No
931 RtemsEventReqSendReceive_Post_SendStatus_InvId,
932 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
933 RtemsEventReqSendReceive_Post_SenderPreemption_No
935 RtemsEventReqSendReceive_Post_SendStatus_InvId,
936 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
937 RtemsEventReqSendReceive_Post_SenderPreemption_No
939 RtemsEventReqSendReceive_Post_SendStatus_InvId,
940 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
941 RtemsEventReqSendReceive_Post_SenderPreemption_No
943 RtemsEventReqSendReceive_Post_SendStatus_InvId,
944 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
945 RtemsEventReqSendReceive_Post_SenderPreemption_No
947 RtemsEventReqSendReceive_Post_SendStatus_InvId,
948 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
949 RtemsEventReqSendReceive_Post_SenderPreemption_No
951 RtemsEventReqSendReceive_Post_SendStatus_InvId,
952 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
953 RtemsEventReqSendReceive_Post_SenderPreemption_No
955 RtemsEventReqSendReceive_Post_SendStatus_InvId,
956 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
957 RtemsEventReqSendReceive_Post_SenderPreemption_No
959 RtemsEventReqSendReceive_Post_SendStatus_InvId,
960 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
961 RtemsEventReqSendReceive_Post_SenderPreemption_No
963 RtemsEventReqSendReceive_Post_SendStatus_InvId,
964 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
965 RtemsEventReqSendReceive_Post_SenderPreemption_No
967 RtemsEventReqSendReceive_Post_SendStatus_InvId,
968 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
969 RtemsEventReqSendReceive_Post_SenderPreemption_No
971 RtemsEventReqSendReceive_Post_SendStatus_InvId,
972 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
973 RtemsEventReqSendReceive_Post_SenderPreemption_No
975 RtemsEventReqSendReceive_Post_SendStatus_InvId,
976 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
977 RtemsEventReqSendReceive_Post_SenderPreemption_No
979 RtemsEventReqSendReceive_Post_SendStatus_InvId,
980 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
981 RtemsEventReqSendReceive_Post_SenderPreemption_No
983 RtemsEventReqSendReceive_Post_SendStatus_InvId,
984 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
985 RtemsEventReqSendReceive_Post_SenderPreemption_No
987 RtemsEventReqSendReceive_Post_SendStatus_InvId,
988 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
989 RtemsEventReqSendReceive_Post_SenderPreemption_No
991 RtemsEventReqSendReceive_Post_SendStatus_InvId,
992 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
993 RtemsEventReqSendReceive_Post_SenderPreemption_No
995 RtemsEventReqSendReceive_Post_SendStatus_InvId,
996 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
997 RtemsEventReqSendReceive_Post_SenderPreemption_No
999 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1000 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1001 RtemsEventReqSendReceive_Post_SenderPreemption_No
1003 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1004 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1005 RtemsEventReqSendReceive_Post_SenderPreemption_No
1007 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1008 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1009 RtemsEventReqSendReceive_Post_SenderPreemption_No
1011 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1012 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1013 RtemsEventReqSendReceive_Post_SenderPreemption_No
1015 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1016 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1017 RtemsEventReqSendReceive_Post_SenderPreemption_No
1019 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1020 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1021 RtemsEventReqSendReceive_Post_SenderPreemption_No
1023 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1024 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1025 RtemsEventReqSendReceive_Post_SenderPreemption_No
1027 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1028 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1029 RtemsEventReqSendReceive_Post_SenderPreemption_No
1031 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1032 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1033 RtemsEventReqSendReceive_Post_SenderPreemption_No
1035 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1036 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1037 RtemsEventReqSendReceive_Post_SenderPreemption_No
1039 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1040 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1041 RtemsEventReqSendReceive_Post_SenderPreemption_No
1043 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1044 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1045 RtemsEventReqSendReceive_Post_SenderPreemption_No
1047 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1048 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1049 RtemsEventReqSendReceive_Post_SenderPreemption_No
1051 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1052 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1053 RtemsEventReqSendReceive_Post_SenderPreemption_No
1055 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1056 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1057 RtemsEventReqSendReceive_Post_SenderPreemption_No
1059 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1060 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1061 RtemsEventReqSendReceive_Post_SenderPreemption_No
1063 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1064 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1065 RtemsEventReqSendReceive_Post_SenderPreemption_No
1067 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1068 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1069 RtemsEventReqSendReceive_Post_SenderPreemption_No
1071 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1072 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1073 RtemsEventReqSendReceive_Post_SenderPreemption_No
1075 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1076 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1077 RtemsEventReqSendReceive_Post_SenderPreemption_No
1079 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1080 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1081 RtemsEventReqSendReceive_Post_SenderPreemption_No
1083 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1084 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1085 RtemsEventReqSendReceive_Post_SenderPreemption_No
1087 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1088 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1089 RtemsEventReqSendReceive_Post_SenderPreemption_No
1091 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1092 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1093 RtemsEventReqSendReceive_Post_SenderPreemption_No
1095 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1096 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1097 RtemsEventReqSendReceive_Post_SenderPreemption_No
1099 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1100 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1101 RtemsEventReqSendReceive_Post_SenderPreemption_No
1103 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1104 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1105 RtemsEventReqSendReceive_Post_SenderPreemption_No
1107 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1108 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1109 RtemsEventReqSendReceive_Post_SenderPreemption_No
1111 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1112 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1113 RtemsEventReqSendReceive_Post_SenderPreemption_No
1115 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1116 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1117 RtemsEventReqSendReceive_Post_SenderPreemption_No
1119 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1120 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1121 RtemsEventReqSendReceive_Post_SenderPreemption_No
1123 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1124 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1125 RtemsEventReqSendReceive_Post_SenderPreemption_No
1127 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1128 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1129 RtemsEventReqSendReceive_Post_SenderPreemption_No
1131 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1132 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1133 RtemsEventReqSendReceive_Post_SenderPreemption_No
1135 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1136 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1137 RtemsEventReqSendReceive_Post_SenderPreemption_No
1139 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1140 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1141 RtemsEventReqSendReceive_Post_SenderPreemption_No
1143 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1144 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1145 RtemsEventReqSendReceive_Post_SenderPreemption_No
1147 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1148 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1149 RtemsEventReqSendReceive_Post_SenderPreemption_No
1151 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1152 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1153 RtemsEventReqSendReceive_Post_SenderPreemption_No
1155 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1156 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1157 RtemsEventReqSendReceive_Post_SenderPreemption_No
1159 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1160 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1161 RtemsEventReqSendReceive_Post_SenderPreemption_No
1163 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1164 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1165 RtemsEventReqSendReceive_Post_SenderPreemption_No
1167 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1168 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1169 RtemsEventReqSendReceive_Post_SenderPreemption_No
1171 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1172 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1173 RtemsEventReqSendReceive_Post_SenderPreemption_No
1175 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1176 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1177 RtemsEventReqSendReceive_Post_SenderPreemption_No
1179 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1180 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1181 RtemsEventReqSendReceive_Post_SenderPreemption_No
1183 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1184 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1185 RtemsEventReqSendReceive_Post_SenderPreemption_No
1187 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1188 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1189 RtemsEventReqSendReceive_Post_SenderPreemption_No
1191 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1192 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1193 RtemsEventReqSendReceive_Post_SenderPreemption_No
1195 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1196 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1197 RtemsEventReqSendReceive_Post_SenderPreemption_No
1199 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1200 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1201 RtemsEventReqSendReceive_Post_SenderPreemption_No
1203 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1204 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1205 RtemsEventReqSendReceive_Post_SenderPreemption_No
1207 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1208 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1209 RtemsEventReqSendReceive_Post_SenderPreemption_No
1211 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1212 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1213 RtemsEventReqSendReceive_Post_SenderPreemption_No
1215 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1216 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1217 RtemsEventReqSendReceive_Post_SenderPreemption_No
1219 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1220 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1221 RtemsEventReqSendReceive_Post_SenderPreemption_No
1223 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1224 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1225 RtemsEventReqSendReceive_Post_SenderPreemption_No
1227 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1228 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1229 RtemsEventReqSendReceive_Post_SenderPreemption_No
1231 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1232 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1233 RtemsEventReqSendReceive_Post_SenderPreemption_No
1235 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1236 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1237 RtemsEventReqSendReceive_Post_SenderPreemption_No
1239 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1240 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1241 RtemsEventReqSendReceive_Post_SenderPreemption_No
1243 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1244 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1245 RtemsEventReqSendReceive_Post_SenderPreemption_No
1247 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1248 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1249 RtemsEventReqSendReceive_Post_SenderPreemption_No
1251 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1252 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1253 RtemsEventReqSendReceive_Post_SenderPreemption_No
1255 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1256 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1257 RtemsEventReqSendReceive_Post_SenderPreemption_No
1259 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1260 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1261 RtemsEventReqSendReceive_Post_SenderPreemption_No
1263 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1264 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1265 RtemsEventReqSendReceive_Post_SenderPreemption_No
1267 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1268 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1269 RtemsEventReqSendReceive_Post_SenderPreemption_No
1271 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1272 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1273 RtemsEventReqSendReceive_Post_SenderPreemption_No
1275 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1276 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1277 RtemsEventReqSendReceive_Post_SenderPreemption_No
1279 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1280 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1281 RtemsEventReqSendReceive_Post_SenderPreemption_No
1283 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1284 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1285 RtemsEventReqSendReceive_Post_SenderPreemption_No
1287 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1288 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1289 RtemsEventReqSendReceive_Post_SenderPreemption_No
1291 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1292 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1293 RtemsEventReqSendReceive_Post_SenderPreemption_No
1295 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1296 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1297 RtemsEventReqSendReceive_Post_SenderPreemption_No
1299 RtemsEventReqSendReceive_Post_SendStatus_InvId,
1300 RtemsEventReqSendReceive_Post_ReceiveStatus_None,
1301 RtemsEventReqSendReceive_Post_SenderPreemption_No
1303 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1304 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1305 RtemsEventReqSendReceive_Post_SenderPreemption_No
1307 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1308 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1309 RtemsEventReqSendReceive_Post_SenderPreemption_No
1311 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1312 RtemsEventReqSendReceive_Post_ReceiveStatus_Unsatisfied,
1313 RtemsEventReqSendReceive_Post_SenderPreemption_No
1315 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1316 RtemsEventReqSendReceive_Post_ReceiveStatus_Unsatisfied,
1317 RtemsEventReqSendReceive_Post_SenderPreemption_No
1319 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1320 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1321 RtemsEventReqSendReceive_Post_SenderPreemption_No
1323 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1324 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1325 RtemsEventReqSendReceive_Post_SenderPreemption_No
1327 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1328 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1329 RtemsEventReqSendReceive_Post_SenderPreemption_No
1331 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1332 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1333 RtemsEventReqSendReceive_Post_SenderPreemption_No
1335 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1336 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1337 RtemsEventReqSendReceive_Post_SenderPreemption_No
1339 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1340 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1341 RtemsEventReqSendReceive_Post_SenderPreemption_No
1343 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1344 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1345 RtemsEventReqSendReceive_Post_SenderPreemption_No
1347 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1348 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1349 RtemsEventReqSendReceive_Post_SenderPreemption_No
1351 #if defined(RTEMS_SMP) 1352 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1353 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1354 RtemsEventReqSendReceive_Post_SenderPreemption_No
1356 RtemsEventReqSendReceive_Post_SendStatus_NA,
1357 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1358 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1361 #if defined(RTEMS_SMP) 1362 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1363 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1364 RtemsEventReqSendReceive_Post_SenderPreemption_No
1366 RtemsEventReqSendReceive_Post_SendStatus_NA,
1367 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1368 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1371 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1372 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1373 RtemsEventReqSendReceive_Post_SenderPreemption_No
1375 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1376 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1377 RtemsEventReqSendReceive_Post_SenderPreemption_No
1379 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1380 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1381 RtemsEventReqSendReceive_Post_SenderPreemption_No
1383 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1384 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1385 RtemsEventReqSendReceive_Post_SenderPreemption_No
1387 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1388 RtemsEventReqSendReceive_Post_ReceiveStatus_Unsatisfied,
1389 RtemsEventReqSendReceive_Post_SenderPreemption_No
1391 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1392 RtemsEventReqSendReceive_Post_ReceiveStatus_Unsatisfied,
1393 RtemsEventReqSendReceive_Post_SenderPreemption_No
1395 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1396 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1397 RtemsEventReqSendReceive_Post_SenderPreemption_No
1399 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1400 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1401 RtemsEventReqSendReceive_Post_SenderPreemption_No
1403 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1404 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1405 RtemsEventReqSendReceive_Post_SenderPreemption_No
1407 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1408 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1409 RtemsEventReqSendReceive_Post_SenderPreemption_No
1411 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1412 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1413 RtemsEventReqSendReceive_Post_SenderPreemption_No
1415 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1416 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1417 RtemsEventReqSendReceive_Post_SenderPreemption_No
1419 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1420 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1421 RtemsEventReqSendReceive_Post_SenderPreemption_No
1423 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1424 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1425 RtemsEventReqSendReceive_Post_SenderPreemption_No
1427 #if defined(RTEMS_SMP) 1428 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1429 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1430 RtemsEventReqSendReceive_Post_SenderPreemption_No
1432 RtemsEventReqSendReceive_Post_SendStatus_NA,
1433 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1434 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1437 #if defined(RTEMS_SMP) 1438 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1439 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1440 RtemsEventReqSendReceive_Post_SenderPreemption_No
1442 RtemsEventReqSendReceive_Post_SendStatus_NA,
1443 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1444 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1447 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1448 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1449 RtemsEventReqSendReceive_Post_SenderPreemption_No
1451 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1452 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1453 RtemsEventReqSendReceive_Post_SenderPreemption_No
1455 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1456 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1457 RtemsEventReqSendReceive_Post_SenderPreemption_No
1459 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1460 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1461 RtemsEventReqSendReceive_Post_SenderPreemption_No
1463 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1464 RtemsEventReqSendReceive_Post_ReceiveStatus_Unsatisfied,
1465 RtemsEventReqSendReceive_Post_SenderPreemption_No
1467 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1468 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1469 RtemsEventReqSendReceive_Post_SenderPreemption_No
1471 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1472 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1473 RtemsEventReqSendReceive_Post_SenderPreemption_No
1475 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1476 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1477 RtemsEventReqSendReceive_Post_SenderPreemption_No
1479 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1480 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1481 RtemsEventReqSendReceive_Post_SenderPreemption_No
1483 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1484 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1485 RtemsEventReqSendReceive_Post_SenderPreemption_No
1487 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1488 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1489 RtemsEventReqSendReceive_Post_SenderPreemption_No
1491 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1492 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1493 RtemsEventReqSendReceive_Post_SenderPreemption_No
1495 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1496 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1497 RtemsEventReqSendReceive_Post_SenderPreemption_No
1499 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1500 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1501 RtemsEventReqSendReceive_Post_SenderPreemption_Yes
1503 #if defined(RTEMS_SMP) 1504 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1505 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1506 RtemsEventReqSendReceive_Post_SenderPreemption_No
1508 RtemsEventReqSendReceive_Post_SendStatus_NA,
1509 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1510 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1513 #if defined(RTEMS_SMP) 1514 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1515 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1516 RtemsEventReqSendReceive_Post_SenderPreemption_No
1518 RtemsEventReqSendReceive_Post_SendStatus_NA,
1519 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1520 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1523 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1524 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1525 RtemsEventReqSendReceive_Post_SenderPreemption_No
1527 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1528 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1529 RtemsEventReqSendReceive_Post_SenderPreemption_No
1531 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1532 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1533 RtemsEventReqSendReceive_Post_SenderPreemption_No
1535 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1536 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1537 RtemsEventReqSendReceive_Post_SenderPreemption_No
1539 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1540 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1541 RtemsEventReqSendReceive_Post_SenderPreemption_No
1543 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1544 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1545 RtemsEventReqSendReceive_Post_SenderPreemption_No
1547 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1548 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1549 RtemsEventReqSendReceive_Post_SenderPreemption_No
1551 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1552 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1553 RtemsEventReqSendReceive_Post_SenderPreemption_No
1555 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1556 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1557 RtemsEventReqSendReceive_Post_SenderPreemption_No
1559 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1560 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1561 RtemsEventReqSendReceive_Post_SenderPreemption_No
1563 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1564 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1565 RtemsEventReqSendReceive_Post_SenderPreemption_No
1567 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1568 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1569 RtemsEventReqSendReceive_Post_SenderPreemption_No
1571 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1572 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1573 RtemsEventReqSendReceive_Post_SenderPreemption_Yes
1575 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1576 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1577 RtemsEventReqSendReceive_Post_SenderPreemption_Yes
1579 #if defined(RTEMS_SMP) 1580 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1581 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1582 RtemsEventReqSendReceive_Post_SenderPreemption_No
1584 RtemsEventReqSendReceive_Post_SendStatus_NA,
1585 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1586 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1589 #if defined(RTEMS_SMP) 1590 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1591 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1592 RtemsEventReqSendReceive_Post_SenderPreemption_No
1594 RtemsEventReqSendReceive_Post_SendStatus_NA,
1595 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1596 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1599 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1600 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1601 RtemsEventReqSendReceive_Post_SenderPreemption_No
1603 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1604 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1605 RtemsEventReqSendReceive_Post_SenderPreemption_No
1607 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1608 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1609 RtemsEventReqSendReceive_Post_SenderPreemption_No
1611 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1612 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1613 RtemsEventReqSendReceive_Post_SenderPreemption_No
1615 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1616 RtemsEventReqSendReceive_Post_ReceiveStatus_Unsatisfied,
1617 RtemsEventReqSendReceive_Post_SenderPreemption_No
1619 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1620 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1621 RtemsEventReqSendReceive_Post_SenderPreemption_No
1623 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1624 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1625 RtemsEventReqSendReceive_Post_SenderPreemption_No
1627 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1628 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1629 RtemsEventReqSendReceive_Post_SenderPreemption_No
1631 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1632 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1633 RtemsEventReqSendReceive_Post_SenderPreemption_No
1635 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1636 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1637 RtemsEventReqSendReceive_Post_SenderPreemption_No
1639 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1640 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1641 RtemsEventReqSendReceive_Post_SenderPreemption_No
1643 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1644 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1645 RtemsEventReqSendReceive_Post_SenderPreemption_No
1647 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1648 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1649 RtemsEventReqSendReceive_Post_SenderPreemption_No
1651 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1652 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1653 RtemsEventReqSendReceive_Post_SenderPreemption_Yes
1655 #if defined(RTEMS_SMP) 1656 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1657 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1658 RtemsEventReqSendReceive_Post_SenderPreemption_No
1660 RtemsEventReqSendReceive_Post_SendStatus_NA,
1661 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1662 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1665 #if defined(RTEMS_SMP) 1666 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1667 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1668 RtemsEventReqSendReceive_Post_SenderPreemption_No
1670 RtemsEventReqSendReceive_Post_SendStatus_NA,
1671 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1672 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1675 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1676 RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked,
1677 RtemsEventReqSendReceive_Post_SenderPreemption_No
1679 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1680 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1681 RtemsEventReqSendReceive_Post_SenderPreemption_No
1683 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1684 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1685 RtemsEventReqSendReceive_Post_SenderPreemption_No
1687 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1688 RtemsEventReqSendReceive_Post_ReceiveStatus_Pending,
1689 RtemsEventReqSendReceive_Post_SenderPreemption_No
1691 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1692 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1693 RtemsEventReqSendReceive_Post_SenderPreemption_No
1695 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1696 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1697 RtemsEventReqSendReceive_Post_SenderPreemption_No
1699 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1700 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1701 RtemsEventReqSendReceive_Post_SenderPreemption_No
1703 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1704 RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout,
1705 RtemsEventReqSendReceive_Post_SenderPreemption_No
1707 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1708 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1709 RtemsEventReqSendReceive_Post_SenderPreemption_No
1711 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1712 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1713 RtemsEventReqSendReceive_Post_SenderPreemption_No
1715 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1716 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1717 RtemsEventReqSendReceive_Post_SenderPreemption_No
1719 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1720 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1721 RtemsEventReqSendReceive_Post_SenderPreemption_No
1723 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1724 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1725 RtemsEventReqSendReceive_Post_SenderPreemption_Yes
1727 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1728 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1729 RtemsEventReqSendReceive_Post_SenderPreemption_Yes
1731 #if defined(RTEMS_SMP) 1732 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1733 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1734 RtemsEventReqSendReceive_Post_SenderPreemption_No
1736 RtemsEventReqSendReceive_Post_SendStatus_NA,
1737 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1738 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1741 #if defined(RTEMS_SMP) 1742 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1743 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1744 RtemsEventReqSendReceive_Post_SenderPreemption_No
1746 RtemsEventReqSendReceive_Post_SendStatus_NA,
1747 RtemsEventReqSendReceive_Post_ReceiveStatus_NA,
1748 RtemsEventReqSendReceive_Post_SenderPreemption_NA
1751 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1752 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1753 RtemsEventReqSendReceive_Post_SenderPreemption_No
1755 RtemsEventReqSendReceive_Post_SendStatus_Ok,
1756 RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied,
1757 RtemsEventReqSendReceive_Post_SenderPreemption_No
1761 static const struct {
1763 uint8_t Pre_Id_NA : 1;
1764 uint8_t Pre_Send_NA : 1;
1765 uint8_t Pre_ReceiverState_NA : 1;
1766 uint8_t Pre_Satisfy_NA : 1;
1767 } RtemsEventReqSendReceive_TransitionInfo[] = {
1985 #if defined(RTEMS_SMP) 1991 #if defined(RTEMS_SMP) 2025 #if defined(RTEMS_SMP) 2031 #if defined(RTEMS_SMP) 2065 #if defined(RTEMS_SMP) 2071 #if defined(RTEMS_SMP) 2105 #if defined(RTEMS_SMP) 2111 #if defined(RTEMS_SMP) 2145 #if defined(RTEMS_SMP) 2151 #if defined(RTEMS_SMP) 2185 #if defined(RTEMS_SMP) 2191 #if defined(RTEMS_SMP) 2203 static void RtemsEventReqSendReceive_Prepare(
2218 T_eq_u32( GetPendingEvents( ctx ), 0 );
2222 static void RtemsEventReqSendReceive_Action(
2240 T_interrupt_test_state state;
2242 state = T_interrupt_test( &InterruptConfig, ctx );
2243 T_eq_int( state, T_INTERRUPT_TEST_DONE );
2256 T_rsc_success( sc );
2257 T_eq_u32( prio, PRIO_HIGH );
2261 static void RtemsEventReqSendReceive_Cleanup(
2276 T_quiet_ne_u32( events, 0 );
2279 T_quiet_eq_u32( events, 0 );
2289 unsigned int wait_class,
2290 int waiting_for_event
2296 ctx = T_push_fixture(
2297 &RtemsEventReqSendReceive_Node,
2298 &RtemsEventReqSendReceive_Fixture
2310 ctx->
pcs[ 0 ] = RtemsEventReqSendReceive_Pre_Id_InvId;
2311 ctx->
pcs[ 0 ] < RtemsEventReqSendReceive_Pre_Id_NA;
2314 if ( RtemsEventReqSendReceive_TransitionInfo[ index ].Pre_Id_NA ) {
2315 ctx->
pcs[ 0 ] = RtemsEventReqSendReceive_Pre_Id_NA;
2316 index += ( RtemsEventReqSendReceive_Pre_Id_NA - 1 )
2317 * RtemsEventReqSendReceive_Pre_Send_NA
2318 * RtemsEventReqSendReceive_Pre_ReceiverState_NA
2319 * RtemsEventReqSendReceive_Pre_Satisfy_NA;
2323 ctx->
pcs[ 1 ] = RtemsEventReqSendReceive_Pre_Send_Zero;
2324 ctx->
pcs[ 1 ] < RtemsEventReqSendReceive_Pre_Send_NA;
2327 if ( RtemsEventReqSendReceive_TransitionInfo[ index ].Pre_Send_NA ) {
2328 ctx->
pcs[ 1 ] = RtemsEventReqSendReceive_Pre_Send_NA;
2329 index += ( RtemsEventReqSendReceive_Pre_Send_NA - 1 )
2330 * RtemsEventReqSendReceive_Pre_ReceiverState_NA
2331 * RtemsEventReqSendReceive_Pre_Satisfy_NA;
2335 ctx->
pcs[ 2 ] = RtemsEventReqSendReceive_Pre_ReceiverState_NotWaiting;
2336 ctx->
pcs[ 2 ] < RtemsEventReqSendReceive_Pre_ReceiverState_NA;
2339 if ( RtemsEventReqSendReceive_TransitionInfo[ index ].Pre_ReceiverState_NA ) {
2340 ctx->
pcs[ 2 ] = RtemsEventReqSendReceive_Pre_ReceiverState_NA;
2341 index += ( RtemsEventReqSendReceive_Pre_ReceiverState_NA - 1 )
2342 * RtemsEventReqSendReceive_Pre_Satisfy_NA;
2346 ctx->
pcs[ 3 ] = RtemsEventReqSendReceive_Pre_Satisfy_All;
2347 ctx->
pcs[ 3 ] < RtemsEventReqSendReceive_Pre_Satisfy_NA;
2350 if ( RtemsEventReqSendReceive_TransitionInfo[ index ].Pre_Satisfy_NA ) {
2351 ctx->
pcs[ 3 ] = RtemsEventReqSendReceive_Pre_Satisfy_NA;
2352 index += ( RtemsEventReqSendReceive_Pre_Satisfy_NA - 1 );
2355 if ( RtemsEventReqSendReceive_TransitionInfo[ index ].Skip ) {
2360 RtemsEventReqSendReceive_Prepare( ctx );
2361 RtemsEventReqSendReceive_Pre_Id_Prepare( ctx, ctx->
pcs[ 0 ] );
2362 RtemsEventReqSendReceive_Pre_Send_Prepare( ctx, ctx->
pcs[ 1 ] );
2363 RtemsEventReqSendReceive_Pre_ReceiverState_Prepare(
2367 RtemsEventReqSendReceive_Pre_Satisfy_Prepare( ctx, ctx->
pcs[ 3 ] );
2368 RtemsEventReqSendReceive_Action( ctx );
2369 RtemsEventReqSendReceive_Post_SendStatus_Check(
2371 RtemsEventReqSendReceive_TransitionMap[ index ][ 0 ]
2373 RtemsEventReqSendReceive_Post_ReceiveStatus_Check(
2375 RtemsEventReqSendReceive_TransitionMap[ index ][ 1 ]
2377 RtemsEventReqSendReceive_Post_SenderPreemption_Check(
2379 RtemsEventReqSendReceive_TransitionMap[ index ][ 2 ]
2381 RtemsEventReqSendReceive_Cleanup( ctx );
unsigned int wait_class
This member contains a copy of the corresponding RtemsEventReqSendReceive_Run() parameter.
rtems_id runner_id
This member contains the ID of the runner task.
#define RTEMS_NO_WAIT
This option constant indicates that the task does not want to wait on the resource.
bool in_action_loop
This member indicates if the test action loop is currently executed.
#define RTEMS_DEFAULT_OPTIONS
This option constant is the default option set.
rtems_id runner_wakeup
This member contains the ID of the semaphore used to wake up the runner task.
#define RTEMS_EVENT_7
This constant defines the bit in the event set associated with event 7.
rtems_status_code receive_status
This member contains the status of the event receive action.
uint32_t rtems_option
This type is used to represent an option set.
rtems_status_code send_status
This member contains the status of the event send action.
#define RTEMS_EVENT_5
This constant defines the bit in the event set associated with event 5.
rtems_option receive_option_set
This member defines the option set used for the event receive action.
rtems_id worker_wakeup
This member contains the ID of the semaphore used to wake up the worker task.
rtems_status_code(* send)(rtems_id, rtems_event_set)
This member contains a copy of the corresponding RtemsEventReqSendReceive_Run() parameter.
This status code indicates that the request was not satisfied.
rtems_name name
This member defines the name of the task.
ReceiveTypes receive_type
This member contains the scheduler ID of the runner task.
#define rtems_build_name(_C1, _C2, _C3, _C4)
%
rtems_status_code rtems_task_delete(rtems_id id)
%
#define RTEMS_ALL_EVENTS
This constant contains all events in an event set.
#define RTEMS_EVENT_23
This constant defines the bit in the event set associated with event 23.
rtems_interval receive_timeout
This member defines the timeout used for the event receive action.
rtems_status_code rtems_scheduler_ident_by_processor(uint32_t cpu_index, rtems_id *id)
Identifies a scheduler instance by a processor index.
static __inline__ Thread_Wait_flags _Thread_Wait_flags_get(const Thread_Control *the_thread)
Gets the thread's wait flags according to the ATOMIC_ORDER_RELAXED.
rtems_status_code rtems_semaphore_release(rtems_id id)
%
This structure defines the configuration of a task constructed by rtems_task_construct().
#define RTEMS_NO_TIMEOUT
This clock tick interval constant indicates that the calling task is willing to wait potentially fore...
Thread_Control * runner_thread
This member contains the TCB of the runner task.
rtems_status_code rtems_task_start(rtems_id id, rtems_task_entry entry_point, rtems_task_argument argument)
%
static __inline__ struct _Thread_Control * _Thread_Get_executing(void)
Returns the thread control block of the executing thread.
CPU_Uint32ptr rtems_task_argument
This type is used to represent task argument values.
uint32_t rtems_task_priority
%
int waiting_for_event
This member contains a copy of the corresponding RtemsEventReqSendReceive_Run() parameter.
rtems_status_code rtems_semaphore_create(rtems_name name, uint32_t count, rtems_attribute attribute_set, rtems_task_priority priority_ceiling, rtems_id *id)
Creates a semaphore with the specified properties and returns its identifier.
This status code indicates successful completion.
rtems_id other_sched
This member contains the scheduler ID of another scheduler which is not used by the runner task...
#define RTEMS_SIMPLE_BINARY_SEMAPHORE
This attribute constant indicates that the Classic API Semaphore object shall be a simple binary sema...
#define THREAD_WAIT_STATE_READY_AGAIN
Indicates that a condition to end the thread wait occurred.
static __inline__ void _Thread_Wait_flags_set(Thread_Control *the_thread, Thread_Wait_flags flags)
Sets the thread's wait flags.
#define RTEMS_PENDING_EVENTS
This constant used to get the set of pending events in rtems_event_receive().
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
unsigned int Thread_Wait_flags
This type is able to contain several flags used to control the wait class and state of a thread...
SenderTypes sender_type
This member defines the sender type to perform the event send action.
#define RTEMS_ALIGNED(_alignment)
Instructs the compiler in a declaration or definition to enforce the specified alignment.
rtems_status_code rtems_semaphore_obtain(rtems_id id, rtems_option option_set, rtems_interval timeout)
%
This status code indicates that an object was in wrong state for the requested operation.
#define RTEMS_MINIMUM_STACK_SIZE
%
States_Control current_state
rtems_status_code rtems_task_set_priority(rtems_id id, rtems_task_priority new_priority, rtems_task_priority *old_priority)
%
#define THREAD_WAIT_STATE_BLOCKED
Indicates that the thread completed the blocking operation.
ReceiveConditionStates receive_condition_state
This member contains the event conditon state of the receiver task after the event send action...
Priorities sender_prio
This member defines the sender task priority.
rtems_status_code(* receive)(rtems_event_set, rtems_option, rtems_interval, rtems_event_set *)
This member contains a copy of the corresponding RtemsEventReqSendReceive_Run() parameter.
#define RTEMS_EVENT_ANY
This option constant indicates that the task wishes to wait until at least one of the events of inter...
T_thread_switch_log_4 thread_switch_log
This member contains the thread switch log.
rtems_id worker_id
This member contains the task ID of the worker task.
rtems_event_set(* get_pending_events)(Thread_Control *)
This member contains a copy of the corresponding RtemsEventReqSendReceive_Run() parameter.
rtems_status_code rtems_task_get_scheduler(rtems_id task_id, rtems_id *scheduler_id)
%
Watchdog_Interval rtems_interval
This type is used to represent clock tick intervals.
This status code indicates that an object identifier was invalid.
#define RTEMS_TASK_STORAGE_SIZE(_size, _attributes)
Returns the recommended task storage area size for the specified size and task attributes.
Objects_Id rtems_id
Values of this type identify an RTEMS object.
Test context for spec:/rtems/event/req/send-receive test case.
rtems_event_set events_to_send
This member defines the events to send for the event send action.
#define RTEMS_DEFAULT_MODES
This task mode constant represents the default mode set.
rtems_id runner_sched
This member contains the scheduler ID of scheduler used by the runner task.
This status code indicates that a blocking directive timed out.
rtems_event_set received_events
This member contains the events received by the event receive action.
Inlined Routines from the Thread Handler.
#define THREAD_WAIT_FLAGS_INITIAL
The initial thread wait flags value set by _Thread_Initialize().
rtems_status_code rtems_task_construct(const rtems_task_config *config, rtems_id *id)
Constructs a task from the specified the task configuration.
rtems_status_code rtems_task_set_scheduler(rtems_id task_id, rtems_id scheduler_id, rtems_task_priority priority)
%
size_t pcs[4]
This member defines the pre-condition states for the next action.
uint32_t rtems_event_set
This integer type can hold an event set of up to 32 events represented as a bit field.
rtems_id receiver_id
This member defines the receiver ID used for the event send action.
rtems_status_code rtems_semaphore_delete(rtems_id id)
%
#define THREAD_WAIT_STATE_INTEND_TO_BLOCK
Indicates that the thread begins with the blocking operation.
rtems_event_set unsatisfied_pending
This member contains the pending events after an event send action which did not satsify the event co...
#define RTEMS_TASK_STORAGE_ALIGNMENT
This constant defines the recommended alignment of a task storage area in bytes.
#define RTEMS_WAIT
This option constant indicates that the task wants to wait on the resource.
void RtemsEventReqSendReceive_Run(rtems_status_code(*send)(rtems_id, rtems_event_set), rtems_status_code(*receive)(rtems_event_set, rtems_option, rtems_interval, rtems_event_set *), rtems_event_set(*get_pending_events)(Thread_Control *), unsigned int wait_class, int waiting_for_event)
Runs the parameterized test case.
#define RTEMS_EVENT_ALL
This option constant indicates that the task wishes to wait until all events of interest are availabl...