RTEMS 6.3
Loading...
Searching...
No Matches
spec:/rtems/event/req/send-receive

Files

file  testsuites/validation/tr-event-send-receive.c
file  testsuites/validation/tr-event-send-receive.h

Data Structures

struct  RtemsEventReqSendReceive_Entry
struct  RtemsEventReqSendReceive_Context
 Test context for spec:/rtems/event/req/send-receive test case. More...
struct  RtemsEventReqSendReceive_Context::[struct].Map

Macros

#define PRIO_OTHER   UINT32_MAX
#define INPUT_EVENTS   ( RTEMS_EVENT_5 | RTEMS_EVENT_23 )

Typedefs

typedef RtemsEventReqSendReceive_Context Context

Enumerations

enum  SenderTypes {
  SENDER_NONE , SENDER_SELF , SENDER_SELF_2 , SENDER_WORKER ,
  SENDER_INTERRUPT
}
enum  ReceiveTypes { RECEIVE_SKIP , RECEIVE_NORMAL , RECEIVE_INTERRUPT }
enum  ReceiveConditionStates { RECEIVE_COND_UNKNOWN , RECEIVE_COND_SATSIFIED , RECEIVE_COND_UNSATISFIED }
enum  RtemsEventReqSendReceive_Pre_Id { RtemsEventReqSendReceive_Pre_Id_InvId , RtemsEventReqSendReceive_Pre_Id_Task , RtemsEventReqSendReceive_Pre_Id_NA }
enum  RtemsEventReqSendReceive_Pre_Send {
  RtemsEventReqSendReceive_Pre_Send_Zero , RtemsEventReqSendReceive_Pre_Send_Unrelated , RtemsEventReqSendReceive_Pre_Send_Any , RtemsEventReqSendReceive_Pre_Send_All ,
  RtemsEventReqSendReceive_Pre_Send_MixedAny , RtemsEventReqSendReceive_Pre_Send_MixedAll , RtemsEventReqSendReceive_Pre_Send_NA
}
enum  RtemsEventReqSendReceive_Pre_ReceiverState {
  RtemsEventReqSendReceive_Pre_ReceiverState_InvAddr , RtemsEventReqSendReceive_Pre_ReceiverState_NotWaiting , RtemsEventReqSendReceive_Pre_ReceiverState_Poll , RtemsEventReqSendReceive_Pre_ReceiverState_Timeout ,
  RtemsEventReqSendReceive_Pre_ReceiverState_Lower , RtemsEventReqSendReceive_Pre_ReceiverState_Equal , RtemsEventReqSendReceive_Pre_ReceiverState_Higher , RtemsEventReqSendReceive_Pre_ReceiverState_Other ,
  RtemsEventReqSendReceive_Pre_ReceiverState_Intend , RtemsEventReqSendReceive_Pre_ReceiverState_NA
}
enum  RtemsEventReqSendReceive_Pre_Satisfy { RtemsEventReqSendReceive_Pre_Satisfy_All , RtemsEventReqSendReceive_Pre_Satisfy_Any , RtemsEventReqSendReceive_Pre_Satisfy_NA }
enum  RtemsEventReqSendReceive_Post_SendStatus { RtemsEventReqSendReceive_Post_SendStatus_Ok , RtemsEventReqSendReceive_Post_SendStatus_InvId , RtemsEventReqSendReceive_Post_SendStatus_NA }
enum  RtemsEventReqSendReceive_Post_ReceiveStatus {
  RtemsEventReqSendReceive_Post_ReceiveStatus_None , RtemsEventReqSendReceive_Post_ReceiveStatus_Pending , RtemsEventReqSendReceive_Post_ReceiveStatus_Timeout , RtemsEventReqSendReceive_Post_ReceiveStatus_Satisfied ,
  RtemsEventReqSendReceive_Post_ReceiveStatus_Unsatisfied , RtemsEventReqSendReceive_Post_ReceiveStatus_Blocked , RtemsEventReqSendReceive_Post_ReceiveStatus_InvAddr , RtemsEventReqSendReceive_Post_ReceiveStatus_NA
}
enum  RtemsEventReqSendReceive_Post_SenderPreemption { RtemsEventReqSendReceive_Post_SenderPreemption_No , RtemsEventReqSendReceive_Post_SenderPreemption_Yes , RtemsEventReqSendReceive_Post_SenderPreemption_NA }

Functions

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.

Detailed Description

Function Documentation

◆ RtemsEventReqSendReceive_Run()

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.

Parameters
sendis the event send handler.
receiveis the event receive handler.
get_pending_eventsis the get pending events handler.
wait_classis the thread wait class.
waiting_for_eventis the thread waiting for event state.