RE: Réf. : Re: mpc / linux kernel - user space

Rod Boyce rod_boyce at
Mon Dec 1 06:00:26 EST 2003


A quick search on this mailing list will point to a replay by Wolfgang Denk
to exactly the same question.  Try

The subject is Interfacing user application and interrupt.  I have just done
exactly this using Wolfgang's reply to this e-mail.  You use either select
or poll and wait in a thread for the interrupt to occure.

Rod Boyce.

-----Original Message-----
From: Aain_Devarenne%ZODIAC at
[mailto:Aain_Devarenne%ZODIAC at]
Sent: Friday, November 28, 2003 10:22 PM
To: linuxppc-embedded at
Subject: Réf. : Re: mpc / linux kernel - user space

Hi everybody

I 'm pending on the same problem as Juergen,
- How can a User Space Thread Wait for a signaling event set by KERNEL  ?
- Can an IOCTL return pending,  and then do a completion after the event ?
- Can we pass an Handle by IOCTL to Kernel from user space ?

Ps: Calling a pointeur in UserSpce seems a bit weird and unsecure !!!

Regards Alain Devarenne

Hi Juergen,

That's normally not something you do and I don't know if it's possible.
Application code normally communicates with your driver code using
calls (read/write). So either your appl procedure must be part
of your module, or you must signal e.g. a user thread the timer
interrupt happened, so the thread can execute that code.
Hope this helps,


On 27-nov-03, at 17:07, Juergen Oberhofer wrote:

> Hi,
> I have a module and an application program in user space:
> The Module performs the following task: at init it initializes the cpm
> timer register of the mpc823,
> such that an interrupt is generated every x microseconds. Thus, I
> installed an interrupt handling function f that handles the timer
> interrupts.
> My problem is that the module / the interrupt handling function should
> execute a procedure defined in the application program. How can I pass
> a
> pointer (which points to that function) from the appl.program to the
> module, such that the handler can execute this function every x
> milliseconds? I thought to create a procedure in the module that
> accepts
> a function pointer as argument. But how can I achieve, that this module
> procedure is visible to the application program? Does somebody have a
> suggestion or know another way to do it?
> Regards,
> Juergen

** Sent via the linuxppc-embedded mail list. See

More information about the Linuxppc-embedded mailing list