Hi everybody !
As you guess I need some help... Indeed I'm a newbie in Linux embedded 
development and I have to work on a linux ppc based board project.
In fact, I have to adapt an existing VxWorks application to a linux montavista 
hardhat application.
My problem is the following : I need to find a linux equivalent routine of the 
intConnect() VxWorks routine. You can see the man page of taht function below :

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
NAME

intConnect( ) - connect a C routine to a hardware interrupt
SYNOPSIS

STATUS intConnect
    (
    VOIDFUNCPTR * vector,   /* interrupt vector to attach to */
    VOIDFUNCPTR   routine,  /* routine to be called */
    int           parameter /* parameter to be passed to routine */
    )

DESCRIPTION

This routine connects a specified C routine to a specified interrupt vector. 
The address of routine is generally stored at vector so that routine is called 
with parameter when the interrupt occurs. The routine is invoked in supervisor 
mode at interrupt level. A proper C environment is established, the necessary 
registers saved, and the stack set up.

The routine can be any normal C code, except that it must not invoke certain 
operating system functions that may block or perform I/O operations.

This routine generally simply calls intHandlerCreate( ) and intVecSet( ). The 
address of the handler returned by intHandlerCreate( ) is what actually goes in 
the interrupt vector.

This routine takes an interrupt vector as a parameter, which is the byte offset 
into the vector table. Macros are provided to convert between interrupt vectors 
and interrupt numbers, see intArchLib.

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

The only hardware interrupts routine I found through my investigations is the 
request_irq(...). But the problem is that request_irq do not allow me to pass 
an argument to the handler... So is there a routine that allows it or is there 
a way to adapt the request_irq() to my case.
I thougt to declare a global variable to store my param but I use multitasking. 
So bad way...


Thanks a lot for helping the newbie that I am...

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/



Reply via email to