summaryrefslogtreecommitdiff
path: root/testsuites/validation/tx-support.h
diff options
context:
space:
mode:
Diffstat (limited to 'testsuites/validation/tx-support.h')
-rw-r--r--testsuites/validation/tx-support.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/testsuites/validation/tx-support.h b/testsuites/validation/tx-support.h
index f933f1b6d6..df0e6a1333 100644
--- a/testsuites/validation/tx-support.h
+++ b/testsuites/validation/tx-support.h
@@ -40,6 +40,7 @@
#include <rtems.h>
#include <rtems/irq-extension.h>
#include <rtems/score/atomic.h>
+#include <rtems/score/threadq.h>
#ifdef __cplusplus
extern "C" {
@@ -309,6 +310,26 @@ void CallWithinISRSubmit( CallWithinISRRequest *request );
void CallWithinISRWait( const CallWithinISRRequest *request );
+typedef struct {
+ Thread_queue_Operations tq_ops;
+ const Thread_queue_Operations *wrapped_ops;
+ Thread_queue_Control thread_queue;
+ CallWithinISRRequest isr_request;
+} WrapThreadQueueContext;
+
+void WrapThreadQueueInitialize(
+ WrapThreadQueueContext *ctx,
+ void ( *handler )( void * ),
+ void *arg
+);
+
+void WrapThreadQueueExtract(
+ WrapThreadQueueContext *ctx,
+ struct _Thread_Control *thread
+);
+
+void WrapThreadQueueDestroy( WrapThreadQueueContext *ctx );
+
rtems_vector_number GetValidInterruptVectorNumber(
const rtems_interrupt_attributes *required
);