43 #include <rtems/test.h> 76 RECEIVE_COND_SATSIFIED,
77 RECEIVE_COND_UNSATISFIED
78 } ReceiveConditionStates;
224 ReqRtemsEventSendReceive_Instance;
226 static const char *
const ReqRtemsEventSendReceive_PreDesc_Id[] = {
232 static const char *
const ReqRtemsEventSendReceive_PreDesc_Send[] = {
242 static const char *
const ReqRtemsEventSendReceive_PreDesc_ReceiverState[] = {
254 static const char *
const ReqRtemsEventSendReceive_PreDesc_Satisfy[] = {
260 static const char *
const *
const ReqRtemsEventSendReceive_PreDesc[] = {
261 ReqRtemsEventSendReceive_PreDesc_Id,
262 ReqRtemsEventSendReceive_PreDesc_Send,
263 ReqRtemsEventSendReceive_PreDesc_ReceiverState,
264 ReqRtemsEventSendReceive_PreDesc_Satisfy,
268 #define INPUT_EVENTS ( RTEMS_EVENT_5 | RTEMS_EVENT_23 ) 272 static rtems_id CreateWakeupSema(
void )
284 T_assert_rsc_success( sc );
289 static void DeleteWakeupSema(
rtems_id id )
304 T_quiet_rsc_success( sc );
312 T_quiet_rsc_success( sc );
333 static bool IsSatisfiedFlags(
Context *ctx )
338 static bool IsSatisfiedState(
Context *ctx )
343 static void SendAction(
Context *ctx )
350 log = T_thread_switch_record( NULL );
356 bool ( *is_satsified )(
Context * )
361 if ( ( *is_satsified )( ctx ) ) {
373 T_ne_u32( missing, 0 );
400 T_eq_u32( prio, PRIO_LOW );
414 Send( ctx, IsSatisfiedState );
438 T_quiet_rsc_success( sc );
443 static void ReqRtemsEventSendReceive_Cleanup(
Context *ctx );
445 static void InterruptPrepare(
void *arg )
447 ReqRtemsEventSendReceive_Cleanup( arg );
450 static void InterruptAction(
void *arg )
464 static void InterruptContinue(
Context *ctx )
469 T_quiet_rsc_success( sc );
472 static T_interrupt_test_state Interrupt(
void *arg )
476 T_interrupt_test_state next_state;
477 T_interrupt_test_state previous_state;
482 if ( IntendsToBlockForEvent( flags ) ) {
483 next_state = T_INTERRUPT_TEST_DONE;
484 }
else if ( BlockedForEvent( flags ) ) {
485 next_state = T_INTERRUPT_TEST_LATE;
487 next_state = T_INTERRUPT_TEST_EARLY;
490 previous_state = T_interrupt_test_change_state(
491 T_INTERRUPT_TEST_ACTION,
495 if ( previous_state == T_INTERRUPT_TEST_ACTION ) {
496 if ( next_state == T_INTERRUPT_TEST_DONE ) {
497 Send( ctx, IsSatisfiedFlags );
499 InterruptContinue( ctx );
507 .prepare = InterruptPrepare,
508 .action = InterruptAction,
509 .interrupt = Interrupt,
510 .max_iteration_count = 10000
513 static void ReqRtemsEventSendReceive_Pre_Id_Prepare(
515 ReqRtemsEventSendReceive_Pre_Id state
519 case ReqRtemsEventSendReceive_Pre_Id_InvId: {
525 case ReqRtemsEventSendReceive_Pre_Id_Task: {
530 case ReqRtemsEventSendReceive_Pre_Id_NA:
535 static void ReqRtemsEventSendReceive_Pre_Send_Prepare(
537 ReqRtemsEventSendReceive_Pre_Send state
541 case ReqRtemsEventSendReceive_Pre_Send_Zero: {
546 case ReqRtemsEventSendReceive_Pre_Send_Unrelated: {
551 case ReqRtemsEventSendReceive_Pre_Send_Any: {
556 case ReqRtemsEventSendReceive_Pre_Send_All: {
561 case ReqRtemsEventSendReceive_Pre_Send_MixedAny: {
566 case ReqRtemsEventSendReceive_Pre_Send_MixedAll: {
571 case ReqRtemsEventSendReceive_Pre_Send_NA:
576 static void ReqRtemsEventSendReceive_Pre_ReceiverState_Prepare(
578 ReqRtemsEventSendReceive_Pre_ReceiverState state
582 case ReqRtemsEventSendReceive_Pre_ReceiverState_NotWaiting: {
588 case ReqRtemsEventSendReceive_Pre_ReceiverState_Poll: {
595 case ReqRtemsEventSendReceive_Pre_ReceiverState_Timeout: {
602 case ReqRtemsEventSendReceive_Pre_ReceiverState_Lower: {
609 case ReqRtemsEventSendReceive_Pre_ReceiverState_Equal: {
616 case ReqRtemsEventSendReceive_Pre_ReceiverState_Higher: {
623 case ReqRtemsEventSendReceive_Pre_ReceiverState_Other: {
630 case ReqRtemsEventSendReceive_Pre_ReceiverState_Intend: {
636 case ReqRtemsEventSendReceive_Pre_ReceiverState_NA:
641 static void ReqRtemsEventSendReceive_Pre_Satisfy_Prepare(
643 ReqRtemsEventSendReceive_Pre_Satisfy state
647 case ReqRtemsEventSendReceive_Pre_Satisfy_All: {
652 case ReqRtemsEventSendReceive_Pre_Satisfy_Any: {
657 case ReqRtemsEventSendReceive_Pre_Satisfy_NA:
662 static void ReqRtemsEventSendReceive_Post_SendStatus_Check(
664 ReqRtemsEventSendReceive_Post_SendStatus state
668 case ReqRtemsEventSendReceive_Post_SendStatus_Ok: {
673 case ReqRtemsEventSendReceive_Post_SendStatus_InvId: {
678 case ReqRtemsEventSendReceive_Post_SendStatus_NA:
683 static void ReqRtemsEventSendReceive_Post_ReceiveStatus_Check(
685 ReqRtemsEventSendReceive_Post_ReceiveStatus state
689 case ReqRtemsEventSendReceive_Post_ReceiveStatus_None: {
691 T_eq_u32( GetPendingEvents( ctx ), 0 );
695 case ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending: {
701 case ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout: {
708 case ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied: {
716 T_eq_u32( GetPendingEvents( ctx ), ctx->
events_to_send & ~INPUT_EVENTS );
720 case ReqRtemsEventSendReceive_Post_ReceiveStatus_Unsatisfied: {
727 case ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked: {
733 case ReqRtemsEventSendReceive_Post_ReceiveStatus_NA:
738 static void ReqRtemsEventSendReceive_Post_SenderPreemption_Check(
740 ReqRtemsEventSendReceive_Post_SenderPreemption state
749 case ReqRtemsEventSendReceive_Post_SenderPreemption_No: {
755 T_le_sz( log->recorded, 1 );
757 for ( i = 0; i < log->recorded; ++i ) {
758 T_ne_u32( log->events[ i ].executing, ctx->
worker_id );
759 T_eq_u32( log->events[ i ].heir, ctx->
runner_id );
764 case ReqRtemsEventSendReceive_Post_SenderPreemption_Yes: {
765 T_eq_sz( log->recorded, 2 );
766 T_eq_u32( log->events[ 0 ].heir, ctx->
runner_id );
767 T_eq_u32( log->events[ 1 ].heir, ctx->
worker_id );
771 case ReqRtemsEventSendReceive_Post_SenderPreemption_NA:
776 static void ReqRtemsEventSendReceive_Setup(
783 .initial_priority = PRIO_LOW,
784 .stack_area = task_stack,
785 .stack_size =
sizeof( task_stack ),
793 memset( ctx, 0,
sizeof( *ctx ) );
802 #if defined(RTEMS_SMP) 811 T_eq_u32( prio, PRIO_HIGH );
813 sc = rtems_task_build( &task_config, &ctx->
worker_id );
814 T_assert_rsc_success( sc );
817 T_assert_rsc_success( sc );
820 static void ReqRtemsEventSendReceive_Setup_Wrap(
void *arg )
826 ReqRtemsEventSendReceive_Setup( ctx );
829 static void ReqRtemsEventSendReceive_Teardown(
839 T_eq_u32( prio, PRIO_NORMAL );
850 static void ReqRtemsEventSendReceive_Teardown_Wrap(
void *arg )
856 ReqRtemsEventSendReceive_Teardown( ctx );
859 static size_t ReqRtemsEventSendReceive_Scope(
void *arg,
char *buf,
size_t n )
866 return T_get_scope( ReqRtemsEventSendReceive_PreDesc, buf, n, ctx->
pcs );
872 static T_fixture ReqRtemsEventSendReceive_Fixture = {
873 .setup = ReqRtemsEventSendReceive_Setup_Wrap,
875 .teardown = ReqRtemsEventSendReceive_Teardown_Wrap,
876 .scope = ReqRtemsEventSendReceive_Scope,
877 .initial_context = &ReqRtemsEventSendReceive_Instance
880 static const uint8_t ReqRtemsEventSendReceive_TransitionMap[][ 3 ] = {
882 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
883 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
884 ReqRtemsEventSendReceive_Post_SenderPreemption_No
886 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
887 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
888 ReqRtemsEventSendReceive_Post_SenderPreemption_No
890 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
891 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
892 ReqRtemsEventSendReceive_Post_SenderPreemption_No
894 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
895 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
896 ReqRtemsEventSendReceive_Post_SenderPreemption_No
898 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
899 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
900 ReqRtemsEventSendReceive_Post_SenderPreemption_No
902 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
903 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
904 ReqRtemsEventSendReceive_Post_SenderPreemption_No
906 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
907 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
908 ReqRtemsEventSendReceive_Post_SenderPreemption_No
910 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
911 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
912 ReqRtemsEventSendReceive_Post_SenderPreemption_No
914 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
915 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
916 ReqRtemsEventSendReceive_Post_SenderPreemption_No
918 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
919 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
920 ReqRtemsEventSendReceive_Post_SenderPreemption_No
922 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
923 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
924 ReqRtemsEventSendReceive_Post_SenderPreemption_No
926 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
927 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
928 ReqRtemsEventSendReceive_Post_SenderPreemption_No
930 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
931 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
932 ReqRtemsEventSendReceive_Post_SenderPreemption_No
934 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
935 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
936 ReqRtemsEventSendReceive_Post_SenderPreemption_No
938 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
939 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
940 ReqRtemsEventSendReceive_Post_SenderPreemption_No
942 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
943 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
944 ReqRtemsEventSendReceive_Post_SenderPreemption_No
946 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
947 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
948 ReqRtemsEventSendReceive_Post_SenderPreemption_No
950 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
951 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
952 ReqRtemsEventSendReceive_Post_SenderPreemption_No
954 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
955 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
956 ReqRtemsEventSendReceive_Post_SenderPreemption_No
958 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
959 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
960 ReqRtemsEventSendReceive_Post_SenderPreemption_No
962 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
963 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
964 ReqRtemsEventSendReceive_Post_SenderPreemption_No
966 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
967 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
968 ReqRtemsEventSendReceive_Post_SenderPreemption_No
970 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
971 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
972 ReqRtemsEventSendReceive_Post_SenderPreemption_No
974 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
975 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
976 ReqRtemsEventSendReceive_Post_SenderPreemption_No
978 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
979 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
980 ReqRtemsEventSendReceive_Post_SenderPreemption_No
982 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
983 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
984 ReqRtemsEventSendReceive_Post_SenderPreemption_No
986 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
987 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
988 ReqRtemsEventSendReceive_Post_SenderPreemption_No
990 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
991 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
992 ReqRtemsEventSendReceive_Post_SenderPreemption_No
994 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
995 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
996 ReqRtemsEventSendReceive_Post_SenderPreemption_No
998 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
999 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1000 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1002 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1003 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1004 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1006 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1007 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1008 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1010 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1011 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1012 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1014 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1015 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1016 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1018 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1019 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1020 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1022 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1023 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1024 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1026 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1027 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1028 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1030 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1031 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1032 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1034 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1035 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1036 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1038 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1039 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1040 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1042 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1043 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1044 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1046 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1047 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1048 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1050 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1051 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1052 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1054 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1055 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1056 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1058 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1059 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1060 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1062 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1063 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1064 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1066 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1067 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1068 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1070 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1071 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1072 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1074 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1075 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1076 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1078 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1079 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1080 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1082 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1083 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1084 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1086 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1087 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1088 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1090 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1091 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1092 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1094 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1095 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1096 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1098 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1099 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1100 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1102 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1103 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1104 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1106 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1107 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1108 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1110 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1111 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1112 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1114 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1115 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1116 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1118 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1119 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1120 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1122 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1123 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1124 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1126 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1127 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1128 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1130 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1131 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1132 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1134 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1135 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1136 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1138 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1139 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1140 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1142 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1143 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1144 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1146 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1147 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1148 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1150 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1151 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1152 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1154 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1155 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1156 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1158 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1159 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1160 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1162 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1163 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1164 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1166 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1167 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1168 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1170 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1171 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1172 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1174 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1175 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1176 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1178 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1179 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1180 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1182 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1183 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1184 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1186 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1187 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1188 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1190 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1191 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1192 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1194 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1195 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1196 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1198 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1199 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1200 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1202 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1203 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1204 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1206 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1207 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1208 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1210 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1211 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1212 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1214 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1215 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1216 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1218 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1219 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1220 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1222 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1223 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1224 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1226 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1227 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1228 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1230 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1231 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1232 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1234 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1235 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1236 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1238 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1239 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1240 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1242 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1243 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1244 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1246 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1247 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1248 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1250 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1251 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1252 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1254 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1255 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1256 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1258 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1259 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1260 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1262 ReqRtemsEventSendReceive_Post_SendStatus_InvId,
1263 ReqRtemsEventSendReceive_Post_ReceiveStatus_None,
1264 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1266 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1267 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1268 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1270 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1271 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1272 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1274 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1275 ReqRtemsEventSendReceive_Post_ReceiveStatus_Unsatisfied,
1276 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1278 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1279 ReqRtemsEventSendReceive_Post_ReceiveStatus_Unsatisfied,
1280 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1282 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1283 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1284 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1286 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1287 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1288 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1290 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1291 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1292 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1294 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1295 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1296 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1298 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1299 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1300 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1302 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1303 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1304 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1306 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1307 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1308 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1310 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1311 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1312 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1314 #if defined(RTEMS_SMP) 1315 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1316 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1317 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1319 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1320 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1321 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1324 #if defined(RTEMS_SMP) 1325 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1326 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1327 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1329 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1330 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1331 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1334 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1335 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1336 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1338 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1339 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1340 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1342 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1343 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1344 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1346 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1347 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1348 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1350 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1351 ReqRtemsEventSendReceive_Post_ReceiveStatus_Unsatisfied,
1352 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1354 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1355 ReqRtemsEventSendReceive_Post_ReceiveStatus_Unsatisfied,
1356 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1358 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1359 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1360 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1362 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1363 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1364 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1366 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1367 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1368 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1370 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1371 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1372 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1374 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1375 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1376 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1378 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1379 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1380 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1382 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1383 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1384 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1386 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1387 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1388 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1390 #if defined(RTEMS_SMP) 1391 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1392 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1393 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1395 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1396 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1397 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1400 #if defined(RTEMS_SMP) 1401 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1402 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1403 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1405 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1406 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1407 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1410 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1411 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1412 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1414 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1415 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1416 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1418 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1419 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1420 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1422 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1423 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1424 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1426 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1427 ReqRtemsEventSendReceive_Post_ReceiveStatus_Unsatisfied,
1428 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1430 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1431 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1432 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1434 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1435 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1436 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1438 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1439 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1440 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1442 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1443 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1444 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1446 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1447 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1448 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1450 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1451 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1452 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1454 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1455 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1456 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1458 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1459 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1460 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1462 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1463 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1464 ReqRtemsEventSendReceive_Post_SenderPreemption_Yes
1466 #if defined(RTEMS_SMP) 1467 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1468 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1469 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1471 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1472 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1473 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1476 #if defined(RTEMS_SMP) 1477 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1478 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1479 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1481 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1482 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1483 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1486 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1487 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1488 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1490 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1491 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1492 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1494 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1495 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1496 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1498 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1499 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1500 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1502 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1503 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1504 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1506 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1507 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1508 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1510 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1511 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1512 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1514 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1515 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1516 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1518 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1519 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1520 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1522 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1523 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1524 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1526 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1527 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1528 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1530 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1531 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1532 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1534 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1535 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1536 ReqRtemsEventSendReceive_Post_SenderPreemption_Yes
1538 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1539 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1540 ReqRtemsEventSendReceive_Post_SenderPreemption_Yes
1542 #if defined(RTEMS_SMP) 1543 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1544 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1545 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1547 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1548 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1549 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1552 #if defined(RTEMS_SMP) 1553 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1554 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1555 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1557 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1558 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1559 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1562 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1563 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1564 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1566 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1567 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1568 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1570 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1571 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1572 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1574 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1575 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1576 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1578 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1579 ReqRtemsEventSendReceive_Post_ReceiveStatus_Unsatisfied,
1580 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1582 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1583 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1584 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1586 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1587 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1588 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1590 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1591 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1592 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1594 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1595 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1596 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1598 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1599 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1600 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1602 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1603 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1604 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1606 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1607 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1608 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1610 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1611 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1612 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1614 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1615 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1616 ReqRtemsEventSendReceive_Post_SenderPreemption_Yes
1618 #if defined(RTEMS_SMP) 1619 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1620 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1621 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1623 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1624 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1625 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1628 #if defined(RTEMS_SMP) 1629 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1630 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1631 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1633 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1634 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1635 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1638 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1639 ReqRtemsEventSendReceive_Post_ReceiveStatus_Blocked,
1640 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1642 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1643 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1644 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1646 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1647 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1648 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1650 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1651 ReqRtemsEventSendReceive_Post_ReceiveStatus_Pending,
1652 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1654 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1655 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1656 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1658 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1659 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1660 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1662 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1663 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1664 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1666 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1667 ReqRtemsEventSendReceive_Post_ReceiveStatus_Timeout,
1668 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1670 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1671 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1672 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1674 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1675 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1676 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1678 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1679 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1680 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1682 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1683 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1684 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1686 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1687 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1688 ReqRtemsEventSendReceive_Post_SenderPreemption_Yes
1690 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1691 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1692 ReqRtemsEventSendReceive_Post_SenderPreemption_Yes
1694 #if defined(RTEMS_SMP) 1695 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1696 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1697 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1699 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1700 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1701 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1704 #if defined(RTEMS_SMP) 1705 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1706 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1707 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1709 ReqRtemsEventSendReceive_Post_SendStatus_NA,
1710 ReqRtemsEventSendReceive_Post_ReceiveStatus_NA,
1711 ReqRtemsEventSendReceive_Post_SenderPreemption_NA
1714 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1715 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1716 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1718 ReqRtemsEventSendReceive_Post_SendStatus_Ok,
1719 ReqRtemsEventSendReceive_Post_ReceiveStatus_Satisfied,
1720 ReqRtemsEventSendReceive_Post_SenderPreemption_No
1724 static const struct {
1726 uint8_t Pre_Id_NA : 1;
1727 uint8_t Pre_Send_NA : 1;
1728 uint8_t Pre_ReceiverState_NA : 1;
1729 uint8_t Pre_Satisfy_NA : 1;
1730 } ReqRtemsEventSendReceive_TransitionInfo[] = {
1948 #if defined(RTEMS_SMP) 1954 #if defined(RTEMS_SMP) 1988 #if defined(RTEMS_SMP) 1994 #if defined(RTEMS_SMP) 2028 #if defined(RTEMS_SMP) 2034 #if defined(RTEMS_SMP) 2068 #if defined(RTEMS_SMP) 2074 #if defined(RTEMS_SMP) 2108 #if defined(RTEMS_SMP) 2114 #if defined(RTEMS_SMP) 2148 #if defined(RTEMS_SMP) 2154 #if defined(RTEMS_SMP) 2166 static void ReqRtemsEventSendReceive_Prepare(
2181 T_eq_u32( GetPendingEvents( ctx ), 0 );
2185 static void ReqRtemsEventSendReceive_Action(
2203 T_interrupt_test_state state;
2205 state = T_interrupt_test( &InterruptConfig, ctx );
2206 T_eq_int( state, T_INTERRUPT_TEST_DONE );
2219 T_rsc_success( sc );
2220 T_eq_u32( prio, PRIO_HIGH );
2224 static void ReqRtemsEventSendReceive_Cleanup(
2239 T_quiet_ne_u32( events, 0 );
2242 T_quiet_eq_u32( events, 0 );
2257 ctx = T_push_fixture(
2258 &ReqRtemsEventSendReceive_Node,
2259 &ReqRtemsEventSendReceive_Fixture
2269 ctx->
pcs[ 0 ] = ReqRtemsEventSendReceive_Pre_Id_InvId;
2270 ctx->
pcs[ 0 ] < ReqRtemsEventSendReceive_Pre_Id_NA;
2273 if ( ReqRtemsEventSendReceive_TransitionInfo[ index ].Pre_Id_NA ) {
2274 ctx->
pcs[ 0 ] = ReqRtemsEventSendReceive_Pre_Id_NA;
2275 index += ( ReqRtemsEventSendReceive_Pre_Id_NA - 1 )
2276 * ReqRtemsEventSendReceive_Pre_Send_NA
2277 * ReqRtemsEventSendReceive_Pre_ReceiverState_NA
2278 * ReqRtemsEventSendReceive_Pre_Satisfy_NA;
2282 ctx->
pcs[ 1 ] = ReqRtemsEventSendReceive_Pre_Send_Zero;
2283 ctx->
pcs[ 1 ] < ReqRtemsEventSendReceive_Pre_Send_NA;
2286 if ( ReqRtemsEventSendReceive_TransitionInfo[ index ].Pre_Send_NA ) {
2287 ctx->
pcs[ 1 ] = ReqRtemsEventSendReceive_Pre_Send_NA;
2288 index += ( ReqRtemsEventSendReceive_Pre_Send_NA - 1 )
2289 * ReqRtemsEventSendReceive_Pre_ReceiverState_NA
2290 * ReqRtemsEventSendReceive_Pre_Satisfy_NA;
2294 ctx->
pcs[ 2 ] = ReqRtemsEventSendReceive_Pre_ReceiverState_NotWaiting;
2295 ctx->
pcs[ 2 ] < ReqRtemsEventSendReceive_Pre_ReceiverState_NA;
2298 if ( ReqRtemsEventSendReceive_TransitionInfo[ index ].Pre_ReceiverState_NA ) {
2299 ctx->
pcs[ 2 ] = ReqRtemsEventSendReceive_Pre_ReceiverState_NA;
2300 index += ( ReqRtemsEventSendReceive_Pre_ReceiverState_NA - 1 )
2301 * ReqRtemsEventSendReceive_Pre_Satisfy_NA;
2305 ctx->
pcs[ 3 ] = ReqRtemsEventSendReceive_Pre_Satisfy_All;
2306 ctx->
pcs[ 3 ] < ReqRtemsEventSendReceive_Pre_Satisfy_NA;
2309 if ( ReqRtemsEventSendReceive_TransitionInfo[ index ].Pre_Satisfy_NA ) {
2310 ctx->
pcs[ 3 ] = ReqRtemsEventSendReceive_Pre_Satisfy_NA;
2311 index += ( ReqRtemsEventSendReceive_Pre_Satisfy_NA - 1 );
2314 if ( ReqRtemsEventSendReceive_TransitionInfo[ index ].Skip ) {
2319 ReqRtemsEventSendReceive_Prepare( ctx );
2320 ReqRtemsEventSendReceive_Pre_Id_Prepare( ctx, ctx->
pcs[ 0 ] );
2321 ReqRtemsEventSendReceive_Pre_Send_Prepare( ctx, ctx->
pcs[ 1 ] );
2322 ReqRtemsEventSendReceive_Pre_ReceiverState_Prepare( ctx, ctx->
pcs[ 2 ] );
2323 ReqRtemsEventSendReceive_Pre_Satisfy_Prepare( ctx, ctx->
pcs[ 3 ] );
2324 ReqRtemsEventSendReceive_Action( ctx );
2325 ReqRtemsEventSendReceive_Post_SendStatus_Check(
2327 ReqRtemsEventSendReceive_TransitionMap[ index ][ 0 ]
2329 ReqRtemsEventSendReceive_Post_ReceiveStatus_Check(
2331 ReqRtemsEventSendReceive_TransitionMap[ index ][ 1 ]
2333 ReqRtemsEventSendReceive_Post_SenderPreemption_Check(
2335 ReqRtemsEventSendReceive_TransitionMap[ index ][ 2 ]
2337 ReqRtemsEventSendReceive_Cleanup( ctx );
rtems_id receiver_id
This member defines the receiver ID used for the event send action.
rtems_id worker_wakeup
This member contains the ID of the semaphore used to wake up the worker task.
rtems_id runner_id
This member contains the ID of the runner task.
rtems_id worker_id
This member contains the task ID of the worker task.
#define RTEMS_NO_WAIT
This option constant indicates that the task does not want to wait on the resource.
#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_event_set(* get_pending_events)(Thread_Control *)
This member contains a copy of the corresponding ReqRtemsEventSendReceive_Run() parameter.
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.
SenderTypes sender_type
This member defines the sender type to perform the event send action.
#define RTEMS_DEFAULT_ATTRIBUTES
This is the default value for an attribute set.
#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...
rtems_option receive_option_set
This member defines the option set used for the event receive action.
bool in_action_loop
This member indicates if the test action loop is currently executed.
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)
%
rtems_status_code receive_status
This member contains the status of the event receive action.
static __inline__ struct _Thread_Control * _Thread_Get_executing(void)
Returns the thread control block of the executing thread.
Test context for spec:/req/rtems/event/send-receive test case.
CPU_Uint32ptr rtems_task_argument
This type is used to represent task argument values.
rtems_event_set received_events
This member contains the events received by the event receive action.
uint32_t rtems_task_priority
%
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 runner_sched
This member contains the scheduler ID of scheduler used by the runner task.
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.
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_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...
rtems_status_code(* receive)(rtems_event_set, rtems_option, rtems_interval, rtems_event_set *)
This member contains a copy of the corresponding ReqRtemsEventSendReceive_Run() parameter.
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.
rtems_id other_sched
This member contains the scheduler ID of another scheduler which is not used by the runner task...
#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...
void ReqRtemsEventSendReceive_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 *))
Runs the parameterized test case.
ReceiveTypes receive_type
This member contains the scheduler ID of the runner task.
Priorities sender_prio
This member defines the sender task priority.
T_thread_switch_log_4 thread_switch_log
This member contains the thread switch log.
rtems_event_set events_to_send
This member defines the events to send for the event send action.
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...
Inlined Routines Associated with Thread State Information.
Thread_Control * runner_thread
This member contains the TCB of the runner task.
T_thread_switch_log_4 thread_switch_log
This member contains the thread switch log.
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.
Priorities sender_prio
This member defines the sender task priority.
This status code indicates that an object identifier was invalid.
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_id runner_id
This member contains the ID of the runner task.
#define STATES_WAITING_FOR_EVENT
rtems_status_code send_status
This member contains the status of the event send action.
rtems_status_code rtems_task_set_scheduler(rtems_id task_id, rtems_id scheduler_id, rtems_task_priority priority)
%
rtems_id runner_wakeup
This member contains the ID of the semaphore used to wake up the runner task.
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(* send)(rtems_id, rtems_event_set)
This member contains a copy of the corresponding ReqRtemsEventSendReceive_Run() parameter.
rtems_interval receive_timeout
This member defines the timeout used for the event receive action.
rtems_status_code rtems_semaphore_delete(rtems_id id)
%
#define THREAD_WAIT_CLASS_EVENT
Indicates that the thread waits for an event.
#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...
size_t pcs[4]
This member defines the pre-condition states for the next action.
#define RTEMS_WAIT
This option constant indicates that the task wants to wait on the resource.
ReceiveConditionStates receive_condition_state
This member contains the event conditon state of the receiver task after the event send action...
#define RTEMS_EVENT_ALL
This option constant indicates that the task wishes to wait until all events of interest are availabl...