File indexing completed on 2025-05-11 08:24:45
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 #ifdef HAVE_CONFIG_H
0021 #include "config.h"
0022 #endif
0023
0024 #include <tmacros.h>
0025
0026 const char rtems_test_name[] = "SP 47";
0027
0028 #define PRIXrtems_mode PRIX32
0029
0030 rtems_task test_asr(rtems_task_argument unused);
0031 rtems_task Init(rtems_task_argument ignored);
0032
0033 rtems_task test_asr(rtems_task_argument unused)
0034 {
0035 rtems_mode mode;
0036
0037 rtems_task_mode(0, RTEMS_CURRENT_MODE, &mode);
0038
0039 if ( (mode & RTEMS_NO_ASR) == 0 ) {
0040 puts( "ERROR - disable ASR not honored" );
0041 printf(
0042 "mode = 0x%08" PRIXrtems_mode " asr = %s\n", mode,
0043 (mode & RTEMS_NO_ASR) ? "OFF" : "ON"
0044 );
0045 } else
0046 puts( "Creating task with ASR disable mode honored" );
0047
0048 TEST_END();
0049 rtems_test_exit( 0 );
0050 }
0051
0052 rtems_task Init(rtems_task_argument ignored)
0053 {
0054 rtems_status_code sc;
0055 rtems_id ti;
0056
0057 TEST_BEGIN();
0058 sc = rtems_task_create(
0059 rtems_build_name('t', 's', 't', '0'),
0060 100,
0061 RTEMS_MINIMUM_STACK_SIZE,
0062 RTEMS_NO_ASR,
0063 RTEMS_DEFAULT_ATTRIBUTES,
0064 &ti
0065 );
0066
0067 if (sc != RTEMS_SUCCESSFUL) {
0068 printf("rtems_task_create failed: %i\n", sc);
0069 exit(0);
0070 }
0071
0072 rtems_task_start(ti, test_asr, 0);
0073
0074 rtems_task_exit();
0075 }
0076
0077
0078
0079 #define CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER
0080 #define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
0081
0082 #define CONFIGURE_MICROSECONDS_PER_TICK 10000
0083
0084 #define CONFIGURE_MAXIMUM_TASKS 64
0085 #define CONFIGURE_MAXIMUM_PERIODS 10
0086
0087 #define CONFIGURE_INITIAL_EXTENSIONS RTEMS_TEST_INITIAL_EXTENSION
0088
0089 #define CONFIGURE_RTEMS_INIT_TASKS_TABLE
0090
0091 #define CONFIGURE_INIT
0092 #include <rtems/confdefs.h>