57 #include <rtems/test.h> 95 T_TEST_CASE( TestsuitesValidationCLibrary )
103 p = aligned_alloc(128, 4);
104 T_step_not_null(0, p);
105 T_step_eq_uptr(1, (uintptr_t) p % 128, 0);
108 T_step_not_null(2, p);
111 memset(&d, 0,
sizeof(d));
112 T_step_eq_int(3, d, 0);
116 memcpy(&d, &s,
sizeof(d));
117 T_step_eq_int(4, d, 1);
162 T_TEST_CASE( TestsuitesValidationClassicBarrier )
174 T_step_rsc_success(0, sc);
178 T_step_rsc_success(1, sc);
179 T_step_eq_u32(2,
id, id2);
183 T_step_rsc_success(3, sc);
184 T_step_eq_u32(4, released, 0);
187 T_step_rsc_success(5, sc);
189 T_check_rtems_barriers(T_EVENT_RUN_INITIALIZE_EARLY, T_case_name());
rtems_status_code rtems_barrier_release(rtems_id id, uint32_t *released)
%
rtems_status_code rtems_barrier_wait(rtems_id id, rtems_interval timeout)
%
void * rtems_malloc(size_t size) RTEMS_MALLOCLIKE RTEMS_ALLOC_SIZE(1) RTEMS_WARN_UNUSED_RESULT
Allocates a memory area of the specified size from the heap.
uint32_t rtems_name
This type is used to represent a Classic API object name.
#define rtems_build_name(_C1, _C2, _C3, _C4)
%
rtems_status_code rtems_barrier_create(rtems_name name, rtems_attribute attribute_set, uint32_t maximum_waiters, rtems_id *id)
%
#define RTEMS_NO_TIMEOUT
This clock tick interval constant indicates that the calling task is willing to wait potentially fore...
rtems_status_code rtems_barrier_ident(rtems_name name, rtems_id *id)
Identifies a barrier object by the specified object name.
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
This header file defines the RTEMS Classic API.
Objects_Id rtems_id
Values of this type identify an RTEMS object.
#define RTEMS_BARRIER_AUTOMATIC_RELEASE
This attribute constant indicates that a Classic API Barrier object shall use the automatic release p...