summaryrefslogtreecommitdiffstats
path: root/testsuites/sptests/sp13
diff options
context:
space:
mode:
Diffstat (limited to 'testsuites/sptests/sp13')
-rw-r--r--testsuites/sptests/sp13/Makefile.am6
-rw-r--r--testsuites/sptests/sp13/fillbuff.c16
-rw-r--r--testsuites/sptests/sp13/init.c8
-rw-r--r--testsuites/sptests/sp13/putbuff.c12
-rw-r--r--testsuites/sptests/sp13/system.h7
-rw-r--r--testsuites/sptests/sp13/task1.c32
-rw-r--r--testsuites/sptests/sp13/task2.c16
7 files changed, 65 insertions, 32 deletions
diff --git a/testsuites/sptests/sp13/Makefile.am b/testsuites/sptests/sp13/Makefile.am
index e5cd4b406b..d6c57a86ff 100644
--- a/testsuites/sptests/sp13/Makefile.am
+++ b/testsuites/sptests/sp13/Makefile.am
@@ -1,6 +1,6 @@
-##
+##
## $Id$
-##
+##
AUTOMAKE_OPTIONS = foreign 1.4
@@ -12,7 +12,7 @@ C_FILES = init.c fillbuff.c putbuff.c task1.c task2.c task3.c
C_O_FILES = $(C_FILES:%.c=${ARCH}/%.o)
H_FILES = system.h
-noinst_HEADERS =$(H_FILES)
+noinst_HEADERS = $(H_FILES)
DOCTYPES = scn doc
DOCS = $(DOCTYPES:%=$(TEST).%)
diff --git a/testsuites/sptests/sp13/fillbuff.c b/testsuites/sptests/sp13/fillbuff.c
index 728606e5bb..6930913d3d 100644
--- a/testsuites/sptests/sp13/fillbuff.c
+++ b/testsuites/sptests/sp13/fillbuff.c
@@ -21,10 +21,26 @@
#include "system.h"
+#define MESSAGE_SIZE (sizeof(long) * 4)
+
void Fill_buffer(
char *source,
long *buffer
)
{
+ char *p;
+ int i;
+/*
memcpy( buffer, source, 16 );
+*/
+ p = source;
+ for ( i=0 ; i<MESSAGE_SIZE ; i++ ) {
+ buffer[i] = *p++;
+ buffer[i] <<= 8;
+ buffer[i] |= *p++;
+ buffer[i] <<= 8;
+ buffer[i] |= *p++;
+ buffer[i] <<= 8;
+ buffer[i] |= *p++;
+ }
}
diff --git a/testsuites/sptests/sp13/init.c b/testsuites/sptests/sp13/init.c
index 2614d2a5d4..5d89586c86 100644
--- a/testsuites/sptests/sp13/init.c
+++ b/testsuites/sptests/sp13/init.c
@@ -24,6 +24,8 @@
#define TEST_INIT
#include "system.h"
+#define MESSAGE_SIZE (sizeof(long) * 4)
+
rtems_task Init(
rtems_task_argument argument
)
@@ -82,7 +84,7 @@ rtems_task Init(
status = rtems_message_queue_create(
Queue_name[ 1 ],
100,
- 16,
+ MESSAGE_SIZE,
RTEMS_DEFAULT_ATTRIBUTES,
&Queue_id[ 1 ]
);
@@ -91,7 +93,7 @@ rtems_task Init(
status = rtems_message_queue_create(
Queue_name[ 2 ],
10,
- 16,
+ MESSAGE_SIZE,
RTEMS_PRIORITY,
&Queue_id[ 2 ]
);
@@ -100,7 +102,7 @@ rtems_task Init(
status = rtems_message_queue_create(
Queue_name[ 3 ],
100,
- 16,
+ MESSAGE_SIZE,
RTEMS_DEFAULT_ATTRIBUTES,
&Queue_id[ 3 ]
);
diff --git a/testsuites/sptests/sp13/putbuff.c b/testsuites/sptests/sp13/putbuff.c
index 26bf149049..70b23ff72f 100644
--- a/testsuites/sptests/sp13/putbuff.c
+++ b/testsuites/sptests/sp13/putbuff.c
@@ -20,9 +20,21 @@
#include "system.h"
+#define MESSAGE_SIZE (4)
+
void Put_buffer(
long *buffer
)
{
+ int i;
+/*
printf( "%16s", (char *)buffer );
+*/
+ for ( i=0 ; i< MESSAGE_SIZE ; i++ ) {
+ printf( "%c%c%c%c", (char) (buffer[i] >> 24),
+ (char) (buffer[i] >> 16 & 0xff),
+ (char) (buffer[i] >> 8 & 0xff),
+ (char) (buffer[i] >> 0 & 0xff) );
+ }
+
}
diff --git a/testsuites/sptests/sp13/system.h b/testsuites/sptests/sp13/system.h
index 49b6d6feaf..fea6a652a6 100644
--- a/testsuites/sptests/sp13/system.h
+++ b/testsuites/sptests/sp13/system.h
@@ -44,11 +44,10 @@ rtems_task Task_3(
/* configuration information */
-#define CONFIGURE_SPTEST
-
-#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER
-#define CONFIGURE_TEST_NEEDS_CLOCK_DRIVER
+#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
+#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
+#define CONFIGURE_MAXIMUM_TASKS 4
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 10
#define CONFIGURE_TICKS_PER_TIMESLICE 100
diff --git a/testsuites/sptests/sp13/task1.c b/testsuites/sptests/sp13/task1.c
index 859c3d46ab..015259b0f0 100644
--- a/testsuites/sptests/sp13/task1.c
+++ b/testsuites/sptests/sp13/task1.c
@@ -25,6 +25,8 @@ char big_receive_buffer[2048];
long buffer[ 4 ];
+#define MESSAGE_SIZE (sizeof(long) * 4)
+
void dope_buffer(unsigned char *buff,
int buff_size,
unsigned32 v)
@@ -64,12 +66,12 @@ rtems_task Task_1(
Fill_buffer( "BUFFER 1 TO Q 1", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 1 TO Q 1" );
- status = rtems_message_queue_send( Queue_id[ 1 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
Fill_buffer( "BUFFER 2 TO Q 1", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 2 TO Q 1" );
- status = rtems_message_queue_send( Queue_id[ 1 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
puts( "TA1 - rtems_task_wake_after - sleep 5 seconds" );
@@ -78,7 +80,7 @@ rtems_task Task_1(
Fill_buffer( "BUFFER 3 TO Q 1", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 3 TO Q 1" );
- status = rtems_message_queue_send( Queue_id[ 1 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 1 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
puts( "TA1 - rtems_task_wake_after - sleep 5 seconds" );
@@ -89,7 +91,7 @@ rtems_test_pause();
Fill_buffer( "BUFFER 1 TO Q 2", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 1 TO Q 2" );
- status = rtems_message_queue_send( Queue_id[ 2 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 2 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
puts_nocr( "TA1 - rtems_message_queue_receive - receive from queue 1 - " );
@@ -112,7 +114,7 @@ rtems_test_pause();
Fill_buffer( "BUFFER 1 TO Q 3", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 1 TO Q 3" );
- status = rtems_message_queue_send( Queue_id[ 3 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 3 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
puts( "TA1 - rtems_task_wake_after - sleep 5 seconds" );
@@ -123,22 +125,22 @@ rtems_test_pause();
Fill_buffer( "BUFFER 2 TO Q 3", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 2 TO Q 3" );
- status = rtems_message_queue_send( Queue_id[ 3 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 3 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
Fill_buffer( "BUFFER 3 TO Q 3", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 3 TO Q 3" );
- status = rtems_message_queue_send( Queue_id[ 3 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 3 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
Fill_buffer( "BUFFER 4 TO Q 3", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 4 TO Q 3" );
- status = rtems_message_queue_send( Queue_id[ 3 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 3 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
Fill_buffer( "BUFFER 5 TO Q 3", buffer );
puts( "TA1 - rtems_message_queue_urgent - BUFFER 5 TO Q 3" );
- status = rtems_message_queue_urgent( Queue_id[ 3 ], buffer, 16 );
+ status = rtems_message_queue_urgent( Queue_id[ 3 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_urgent" );
for ( index = 1 ; index <= 4 ; index++ ) {
@@ -161,7 +163,7 @@ rtems_test_pause();
Fill_buffer( "BUFFER 3 TO Q 2", buffer );
puts( "TA1 - rtems_message_queue_urgent - BUFFER 3 TO Q 2" );
- status = rtems_message_queue_urgent( Queue_id[ 2 ], buffer, 16 );
+ status = rtems_message_queue_urgent( Queue_id[ 2 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_urgent" );
puts(
@@ -188,7 +190,7 @@ rtems_test_pause();
Fill_buffer( "BUFFER 3 TO Q 2", buffer );
puts( "TA1 - rtems_message_queue_urgent - BUFFER 3 TO Q 2" );
- status = rtems_message_queue_urgent( Queue_id[ 2 ], buffer, 16 );
+ status = rtems_message_queue_urgent( Queue_id[ 2 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_urgent" );
puts( "TA1 - rtems_message_queue_delete - delete queue 2" );
@@ -205,12 +207,12 @@ rtems_test_pause();
Fill_buffer( "BUFFER 1 TO Q 3", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 1 TO Q 3" );
- status = rtems_message_queue_send( Queue_id[ 3 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 3 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
Fill_buffer( "BUFFER 2 TO Q 3", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 2 TO Q 3" );
- status = rtems_message_queue_send( Queue_id[ 3 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 3 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
/* this broadcast should have no effect on the queue */
@@ -231,7 +233,7 @@ rtems_test_pause();
Fill_buffer( "BUFFER 3 TO Q 3", buffer );
puts( "TA1 - rtems_message_queue_send - BUFFER 3 TO Q 3" );
- status = rtems_message_queue_send( Queue_id[ 3 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 3 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
puts( "TA1 - rtems_message_queue_flush - Q 3" );
@@ -240,7 +242,7 @@ rtems_test_pause();
puts( "TA1 - rtems_message_queue_send until all message buffers consumed" );
while ( FOREVER ) {
- status = rtems_message_queue_send( Queue_id[ 3 ], buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 3 ], buffer, MESSAGE_SIZE );
if ( status == RTEMS_TOO_MANY ) break;
directive_failed( status, "rtems_message_queue_send loop" );
}
diff --git a/testsuites/sptests/sp13/task2.c b/testsuites/sptests/sp13/task2.c
index c3e117fae3..258a036f8c 100644
--- a/testsuites/sptests/sp13/task2.c
+++ b/testsuites/sptests/sp13/task2.c
@@ -20,6 +20,8 @@
#include "system.h"
+#define MESSAGE_SIZE (sizeof(long) * 4)
+
rtems_task Task_2(
rtems_task_argument argument
)
@@ -34,7 +36,7 @@ rtems_task Task_2(
);
status = rtems_message_queue_receive(
Queue_id[ 1 ],
- (long (*)[4])buffer,
+ buffer,
&size,
RTEMS_NO_WAIT,
RTEMS_NO_TIMEOUT
@@ -50,7 +52,7 @@ rtems_task Task_2(
);
status = rtems_message_queue_receive(
Queue_id[ 1 ],
- (long (*)[4])buffer,
+ buffer,
&size,
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT
@@ -66,7 +68,7 @@ rtems_task Task_2(
);
status = rtems_message_queue_receive(
Queue_id[ 1 ],
- (long (*)[4])buffer,
+ buffer,
&size,
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT
@@ -86,7 +88,7 @@ rtems_task Task_2(
);
status = rtems_message_queue_receive(
Queue_id[ 2 ],
- (long (*)[4])buffer,
+ buffer,
&size,
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT
@@ -100,7 +102,7 @@ rtems_task Task_2(
puts( "TA2 - rtems_message_queue_send - BUFFER 2 TO Q 2" );
directive_failed( status, "rtems_message_queue_send" );
- status = rtems_message_queue_send( Queue_id[ 2 ], (long (*)[4])buffer, 16 );
+ status = rtems_message_queue_send( Queue_id[ 2 ], buffer, MESSAGE_SIZE );
directive_failed( status, "rtems_message_queue_send" );
puts(
@@ -109,7 +111,7 @@ rtems_task Task_2(
);
status = rtems_message_queue_receive(
Queue_id[ 1 ],
- (long (*)[4])buffer,
+ buffer,
&size,
RTEMS_DEFAULT_OPTIONS,
10 * TICKS_PER_SECOND
@@ -125,7 +127,7 @@ rtems_task Task_2(
);
status = rtems_message_queue_receive(
Queue_id[ 3 ],
- (long (*)[4])buffer,
+ buffer,
&size,
RTEMS_DEFAULT_OPTIONS,
RTEMS_NO_TIMEOUT