RTEMS
Classes | Macros | Typedefs | Functions | Variables
t-test-interrupt.c File Reference

Implementation of T_interrupt_test(). More...

#include <rtems/test.h>
#include <rtems/score/atomic.h>
#include <rtems/score/percpu.h>
#include <rtems/score/thread.h>
#include <rtems/score/timecounter.h>
#include <rtems/score/timestampimpl.h>
#include <rtems/score/userextimpl.h>
#include <rtems/score/watchdogimpl.h>
#include <rtems/score/smpimpl.h>

Go to the source code of this file.

Classes

struct  T_interrupt_context
 
struct  T_interrupt_clock_time
 

Macros

#define T_INTERRUPT_SAMPLE_COUNT   8
 

Typedefs

typedef T_interrupt_test_state(* T_interrupt_test_handler) (void *)
 

Functions

static void T_interrupt_sort (T_interrupt_clock_time *ct, size_t n)
 
static int64_t T_interrupt_time_close_to_tick (void)
 
static void T_interrupt_watchdog (Watchdog_Control *wdg)
 
static void T_interrupt_watchdog_insert (T_interrupt_context *ctx)
 
static void T_interrupt_watchdog_remove (T_interrupt_context *ctx)
 
static void T_interrupt_init_once (T_interrupt_context *ctx)
 
static T_interrupt_test_state T_interrupt_continue (void *arg)
 
static void T_interrupt_do_nothing (void *arg)
 
static void T_interrupt_blocked (void *arg)
 
static void T_interrupt_thread_switch (Thread_Control *, Thread_Control *)
 
T_interrupt_test_state T_interrupt_test_change_state (T_interrupt_test_state expected_state, T_interrupt_test_state desired_state)
 
T_interrupt_test_state T_interrupt_test_get_state (void)
 
void T_interrupt_test_busy_wait_for_interrupt (void)
 
static T_interrupt_contextT_interrupt_setup (const T_interrupt_test_config *config, void *arg)
 
static void T_interrupt_teardown (void *arg)
 
T_interrupt_test_state T_interrupt_test (const T_interrupt_test_config *config, void *arg)
 

Variables

static T_interrupt_context T_interrupt_instance
 
static const T_fixture T_interrupt_fixture
 

Detailed Description

Implementation of T_interrupt_test().

Definition in file t-test-interrupt.c.

Variable Documentation

◆ T_interrupt_fixture

const T_fixture T_interrupt_fixture
static
Initial value:
= {
.teardown = T_interrupt_teardown,
.initial_context = &T_interrupt_instance
}

Definition at line 355 of file t-test-interrupt.c.

◆ T_interrupt_instance

T_interrupt_context T_interrupt_instance
static
Initial value:
= {
.interrupt = T_interrupt_continue,
.blocked = T_interrupt_do_nothing,
.job = {
.context = &T_interrupt_instance.job_context
},
.job_context = {
.handler = T_interrupt_blocked,
.arg = &T_interrupt_instance
},
.wdg = WATCHDOG_INITIALIZER(T_interrupt_watchdog),
.ext = {
.Callouts = {
.thread_switch = T_interrupt_thread_switch
}
}
}
Per_CPU_Job_handler handler
The job handler.
Definition: percpu.h:188
#define WATCHDOG_INITIALIZER(routine)
Watchdog initializer for static initialization.
Definition: watchdogimpl.h:79

Definition at line 223 of file t-test-interrupt.c.