2008-07-17 Joel Sherrill <joel.sherrill@oarcorp.com>

* sp09/screen09.c: Do not use Simple Vectored Interrupt calls on
	architectures they are not supported on.
This commit is contained in:
Joel Sherrill
2008-07-17 21:22:29 +00:00
parent 00a2d366a6
commit ffb9eeb5ce
2 changed files with 46 additions and 32 deletions

View File

@@ -1,3 +1,8 @@
2008-07-17 Joel Sherrill <joel.sherrill@oarcorp.com>
* sp09/screen09.c: Do not use Simple Vectored Interrupt calls on
architectures they are not supported on.
2008-07-16 Joel Sherrill <joel.sherrill@oarcorp.com>
* sp43/init.c, sp43/sp43.scn: Add call to rtems_get_version_string().

View File

@@ -24,41 +24,50 @@ void Screen9()
rtems_status_code status;
rtems_isr_entry old_service_routine;
status = rtems_interrupt_catch(
Service_routine,
ISR_INTERRUPT_MAXIMUM_VECTOR_NUMBER + 10,
&old_service_routine
);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_interrupt_catch with invalid vector"
);
puts( "TA1 - rtems_interrupt_catch - RTEMS_INVALID_NUMBER" );
#if defined(_C3x) || defined(_C4x)
puts( "TA1 - rtems_interrupt_catch - bad handler RTEMS_INVALID_ADDRESS -- SKIPPED" );
#if (CPU_SIMPLE_VECTORED_INTERRUPTS == TRUE)
puts( "TRUE" );
#else
status = rtems_interrupt_catch( NULL, 3, &old_service_routine );
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_interrupt_catch with invalid handler"
);
puts( "TA1 - rtems_interrupt_catch - bad handler RTEMS_INVALID_ADDRESS" );
puts( "FALSE" );
#endif
#if defined(_C3x) || defined(_C4x)
puts( "TA1 - rtems_interrupt_catch - old isr RTEMS_INVALID_ADDRESS - SKIPPED" );
#else
status = rtems_interrupt_catch( Service_routine, 3, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_interrupt_catch with invalid old isr pointer"
);
puts( "TA1 - rtems_interrupt_catch - old isr RTEMS_INVALID_ADDRESS" );
#endif
#if ((CPU_SIMPLE_VECTORED_INTERRUPTS == FALSE) || \
defined(_C3x) || defined(_C4x))
puts(
"TA1 - rtems_interrupt_catch - "
"bad handler RTEMS_INVALID_ADDRESS -- SKIPPED"
);
puts(
"TA1 - rtems_interrupt_catch - "
"old isr RTEMS_INVALID_ADDRESS - SKIPPED" );
#else
status = rtems_interrupt_catch(
Service_routine,
ISR_INTERRUPT_MAXIMUM_VECTOR_NUMBER + 10,
&old_service_routine
);
fatal_directive_status(
status,
RTEMS_INVALID_NUMBER,
"rtems_interrupt_catch with invalid vector"
);
puts( "TA1 - rtems_interrupt_catch - RTEMS_INVALID_NUMBER" );
status = rtems_interrupt_catch( NULL, 3, &old_service_routine );
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_interrupt_catch with invalid handler"
);
puts( "TA1 - rtems_interrupt_catch - bad handler RTEMS_INVALID_ADDRESS" );
status = rtems_interrupt_catch( Service_routine, 3, NULL );
fatal_directive_status(
status,
RTEMS_INVALID_ADDRESS,
"rtems_interrupt_catch with invalid old isr pointer"
);
puts( "TA1 - rtems_interrupt_catch - old isr RTEMS_INVALID_ADDRESS" );
#endif
status = rtems_signal_send( 100, RTEMS_SIGNAL_1 );
fatal_directive_status(