cpukit/libgnat/ada_intrsupp.c: removed uses of set_vector()

removed uses of set_vector in __gnat_interrupt_connect()
and __gnat_interrupt_set()

Updates #5215
This commit is contained in:
Sunil Hegde
2025-07-30 20:09:03 +05:30
committed by Joel Sherrill
parent 4646d614c3
commit ccef4b74d0

View File

@@ -120,8 +120,7 @@ int __gnat_binary_semaphore_flush(
return 0;
}
typedef void (*ISRHandler)(void*);
void *set_vector( void *, rtems_vector_number, int );
typedef void (*ISRHandler)(void *);
int __gnat_interrupt_connect(
int vector,
@@ -129,8 +128,23 @@ int __gnat_interrupt_connect(
void *parameter
)
{
rtems_status_code status;
printk( "__gnat_interrupt_connect( %d, %p, %p )\n", vector, handler, parameter );
set_vector( handler, vector, 1 );
status = rtems_interrupt_handler_install(
vector,
"Ada interrupt handler",
RTEMS_INTERRUPT_UNIQUE,
(rtems_interrupt_handler) handler,
parameter
);
if ( status != RTEMS_SUCCESSFUL ) {
printk( "__gnat_interrupt_connect failed: %d\n", status );
return -1;
}
return 0;
}
@@ -139,9 +153,23 @@ int __gnat_interrupt_set(
ISRHandler handler
)
{
rtems_status_code status;
printk( "__gnat_interrupt_set( %d, %p )\n", vector, handler );
set_vector( handler, vector, 1 );
status = rtems_interrupt_handler_install(
vector,
"Ada interrupt handler",
RTEMS_INTERRUPT_UNIQUE,
(rtems_interrupt_handler) handler,
NULL
);
if ( status != RTEMS_SUCCESSFUL ) {
printk( "__gnat_interrupt_set failed: %d\n", status );
return -1;
}
return 0;
}
@@ -160,4 +188,3 @@ int __gnat_interrupt_number_to_vector(
printk( "__gnat_interrupt_number_to_vector( %d )\n", intNum );
return intNum;
}