linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: getting timestamp of last interrupt?
       [not found] ` <fa.fvjdidn.13ni70f@ifi.uio.no>
@ 2003-10-04  4:03   ` Hans-Georg Thien
  2003-10-06 12:52     ` Richard B. Johnson
  0 siblings, 1 reply; 14+ messages in thread
From: Hans-Georg Thien @ 2003-10-04  4:03 UTC (permalink / raw)
  To: linux-kernel

Richard B. Johnson wrote:
> On Thu, 2 Oct 2003, Hans-Georg Thien wrote:
> 
> 
>>I am looking for a possibility to read out the last timestamp when an
>>interrupt has occured.
>>
>>e.g.: the user presses a key on the keyboard. Where can I read out the
>>timestamp of this event?
> 
> 
> You can get A SIGIO signal for every keyboard, (or other input) event.
> What you do with it is entirely up to you. Linux/Unix doesn't have
> "callbacks", instead it has signals. It also has select() and poll(),
> all useful for handling such events. If you want a time-stamp, you
> call gettimeofday() in your signal handler.
> 
Thanks a lot Richard,

... but ... can I use signals in kernel mode?



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
       [not found] ` <fa.ch95hks.10kepak@ifi.uio.no>
@ 2003-10-04  4:05   ` Hans-Georg Thien
  2003-10-06 15:26     ` Gabriel Paubert
  0 siblings, 1 reply; 14+ messages in thread
From: Hans-Georg Thien @ 2003-10-04  4:05 UTC (permalink / raw)
  To: linux-kernel

Karim Yaghmour wrote:

> 
> Hans-Georg Thien wrote:
> 
>> I am looking for a possibility to read out the last timestamp when an 
>> interrupt has occured.
>>
>> e.g.: the user presses a key on the keyboard. Where can I read out the 
>> timestamp of this event?
>>
>> To be more precise, I 'm looking for
>>
>> ( )a function call
>> ( ) a callback where I can register to be notified when an event occurs
>> ( ) a global accessible variable
>> ( ) a /proc entry
>>
>> or something like that.
>>
>> Any ideas ?
> 
> 
> Have a look at the Linux Trace Toolkit:
> http://www.opersys.com/LTT/
> It records micro-second time-stamps for quite a few events, including
> interrupts.
> 
thanke a lot for reply Karim,

but I think that LTT does not fit to my needs. It needs to modify the
kernel - and that is what I want to avoid.

I'm looking for a already existing built-in capability.

Maybe signal SIGIO is a solution, if it  does not

(x) give me *every* IO event
(x) has to much overhead - I have to respond to keyboard/mouse events, *not*
     disk events
     grafic card events
     eth event
     etc. ...


- Hans





^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-04  4:03   ` getting timestamp of last interrupt? Hans-Georg Thien
@ 2003-10-06 12:52     ` Richard B. Johnson
  2003-10-06 18:21       ` Hans-Georg Thien
  0 siblings, 1 reply; 14+ messages in thread
From: Richard B. Johnson @ 2003-10-06 12:52 UTC (permalink / raw)
  To: Hans-Georg Thien; +Cc: linux-kernel

On Sat, 4 Oct 2003, Hans-Georg Thien wrote:

> Richard B. Johnson wrote:
> > On Thu, 2 Oct 2003, Hans-Georg Thien wrote:
> >
> >
> >>I am looking for a possibility to read out the last timestamp when an
> >>interrupt has occured.
> >>
> >>e.g.: the user presses a key on the keyboard. Where can I read out the
> >>timestamp of this event?
> >
> >
> > You can get A SIGIO signal for every keyboard, (or other input) event.
> > What you do with it is entirely up to you. Linux/Unix doesn't have
> > "callbacks", instead it has signals. It also has select() and poll(),
> > all useful for handling such events. If you want a time-stamp, you
> > call gettimeofday() in your signal handler.
> >
> Thanks a lot Richard,
>
> ... but ... can I use signals in kernel mode?

Well you talked about the user pressing a key and getting
a time-stamp as a result. If you need time-stamps
inside the kernel, i.e, a module, then you can call
the kernel's do_gettimeofday() function.

Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
            Note 96.31% of all statistics are fiction.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-04  4:05   ` Hans-Georg Thien
@ 2003-10-06 15:26     ` Gabriel Paubert
  2003-10-06 18:37       ` Hans-Georg Thien
  0 siblings, 1 reply; 14+ messages in thread
From: Gabriel Paubert @ 2003-10-06 15:26 UTC (permalink / raw)
  To: Hans-Georg Thien; +Cc: linux-kernel

On Sat, Oct 04, 2003 at 06:05:02AM +0200, Hans-Georg Thien wrote:
> Karim Yaghmour wrote:
> 
> >
> >Hans-Georg Thien wrote:
> >
> >>I am looking for a possibility to read out the last timestamp when an 
> >>interrupt has occured.
> >>
> >>e.g.: the user presses a key on the keyboard. Where can I read out the 
> >>timestamp of this event?
> >>
> >>To be more precise, I 'm looking for
> >>
> >>( )a function call
> >>( ) a callback where I can register to be notified when an event occurs
> >>( ) a global accessible variable
> >>( ) a /proc entry
> >>
> >>or something like that.
> >>
> >>Any ideas ?
> >
> >
> >Have a look at the Linux Trace Toolkit:
> >http://www.opersys.com/LTT/
> >It records micro-second time-stamps for quite a few events, including
> >interrupts.
> >
> thanke a lot for reply Karim,
> 
> but I think that LTT does not fit to my needs. It needs to modify the
> kernel - and that is what I want to avoid.
> 
> I'm looking for a already existing built-in capability.
> 
> Maybe signal SIGIO is a solution, if it  does not
> 
> (x) give me *every* IO event
> (x) has to much overhead - I have to respond to keyboard/mouse events, *not*

Doesn't the input layer add a timestamp to every event? 

At least that's the impression I have from xxd /dev/input/eventN: the
first eight bytes of each 16 bytes packet look so furiously close to
a struct timeval that they can't be anything else :-)

Just that I don't know how the devices and N are associated, it seems to be
order of discovery/registering at boot.

	Regards,
	Gabriel

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-06 12:52     ` Richard B. Johnson
@ 2003-10-06 18:21       ` Hans-Georg Thien
  2003-10-06 18:34         ` Richard B. Johnson
  0 siblings, 1 reply; 14+ messages in thread
From: Hans-Georg Thien @ 2003-10-06 18:21 UTC (permalink / raw)
  To: root; +Cc: Kernel Mailing List

Richard B. Johnson wrote:
> On Sat, 4 Oct 2003, Hans-Georg Thien wrote:
> 
> 
>>> [...]
>>>>I am looking for a possibility to read out the last timestamp when an
>>>>interrupt has occured.
>>>>
>>>>e.g.: the user presses a key on the keyboard. Where can I read out the
>>>>timestamp of this event?
>>>
>>>
>>>You can get A SIGIO signal for every keyboard, (or other input) event.
>>>What you do with it is entirely up to you. Linux/Unix doesn't have
>>>"callbacks", instead it has signals. It also has select() and poll(),
>>>all useful for handling such events. If you want a time-stamp, you
>>>call gettimeofday() in your signal handler.
>>>
>>
>>Thanks a lot Richard,
>>
>>... but ... can I use signals in kernel mode?
> 
> 
> Well you talked about the user pressing a key and getting
> a time-stamp as a result. If you need time-stamps
> inside the kernel, i.e, a module, then you can call
> the kernel's do_gettimeofday() function.
> 
Hello Richard, - It seems, that I should be more precise about what I 
exactly mean...


I'm writing a kernel mode device driver (mouse).

In that device driver I need the timestamp of the last event for another 
kernel mode device (keyboard).

I do not care if that timestamp is in jiffies or in gettimeofday() 
format or whatever format does exist in the world. I am absolutely sure 
I can convert it somehow to fit my needs.

But since it is a kernel mode driver it can not -AFAIK- use the signal() 
syscall.

-Hans




^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-06 18:21       ` Hans-Georg Thien
@ 2003-10-06 18:34         ` Richard B. Johnson
  2003-10-06 19:05           ` Hans-Georg Thien
  0 siblings, 1 reply; 14+ messages in thread
From: Richard B. Johnson @ 2003-10-06 18:34 UTC (permalink / raw)
  To: Hans-Georg Thien; +Cc: Kernel Mailing List

On Mon, 6 Oct 2003, Hans-Georg Thien wrote:

> Richard B. Johnson wrote:
> > On Sat, 4 Oct 2003, Hans-Georg Thien wrote:
> >
> >
> >>> [...]
> >>>>I am looking for a possibility to read out the last timestamp when an
> >>>>interrupt has occured.
> >>>>
> >>>>e.g.: the user presses a key on the keyboard. Where can I read out the
> >>>>timestamp of this event?
> >>>
> >>>
> >>>You can get A SIGIO signal for every keyboard, (or other input) event.
> >>>What you do with it is entirely up to you. Linux/Unix doesn't have
> >>>"callbacks", instead it has signals. It also has select() and poll(),
> >>>all useful for handling such events. If you want a time-stamp, you
> >>>call gettimeofday() in your signal handler.
> >>>
> >>
> >>Thanks a lot Richard,
> >>
> >>... but ... can I use signals in kernel mode?
> >
> >
> > Well you talked about the user pressing a key and getting
> > a time-stamp as a result. If you need time-stamps
> > inside the kernel, i.e, a module, then you can call
> > the kernel's do_gettimeofday() function.
> >
> Hello Richard, - It seems, that I should be more precise about what I
> exactly mean...
>
>
> I'm writing a kernel mode device driver (mouse).
>
> In that device driver I need the timestamp of the last event for another
> kernel mode device (keyboard).
>
> I do not care if that timestamp is in jiffies or in gettimeofday()
> format or whatever format does exist in the world. I am absolutely sure
> I can convert it somehow to fit my needs.
>
> But since it is a kernel mode driver it can not -AFAIK- use the signal()
> syscall.
>
> -Hans

Then it gets real simple. Just use jiffies, if you can stand the
wrap that will occur every (2^32 -1)/HZ seconds ~= 497 days with
HZ = 100. If not, call sys_gettimeofday(). Also, if your events
are closer in time than a HZ, then you must get time from
sys_gettimeofday().

Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
            Note 96.31% of all statistics are fiction.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-06 15:26     ` Gabriel Paubert
@ 2003-10-06 18:37       ` Hans-Georg Thien
  0 siblings, 0 replies; 14+ messages in thread
From: Hans-Georg Thien @ 2003-10-06 18:37 UTC (permalink / raw)
  To: Gabriel Paubert; +Cc: Kernel Mailing List

Gabriel Paubert wrote:

>>> [...]
>>>>I am looking for a possibility to read out the last timestamp when an 
>>>>interrupt has occured.
>>>>[...]
> 
> 
> Doesn't the input layer add a timestamp to every event? 
> 
> At least that's the impression I have from xxd /dev/input/eventN: the
> first eight bytes of each 16 bytes packet look so furiously close to
> a struct timeval that they can't be anything else :-)
> 
> Just that I don't know how the devices and N are associated, it seems to be
> order of discovery/registering at boot.
Hello Gabriel,

Oh yes, - that looks quite good to me. I'm investigating on that now. I 
found out, that you need at least to compile the "evdev" module.

-Hans



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-06 18:34         ` Richard B. Johnson
@ 2003-10-06 19:05           ` Hans-Georg Thien
  2003-10-06 19:33             ` Richard B. Johnson
  0 siblings, 1 reply; 14+ messages in thread
From: Hans-Georg Thien @ 2003-10-06 19:05 UTC (permalink / raw)
  To: root; +Cc: Kernel Mailing List

Richard B. Johnson wrote:

> On Mon, 6 Oct 2003, Hans-Georg Thien wrote:
> 
>>
>>[...]
>>I'm writing a kernel mode device driver (mouse).
>>
>>In that device driver I need the timestamp of the last event for another
>>kernel mode device (keyboard).
>>
>>I do not care if that timestamp is in jiffies or in gettimeofday()
>>format or whatever format does exist in the world. I am absolutely sure
>>I can convert it somehow to fit my needs.
>>
>>But since it is a kernel mode driver it can not -AFAIK- use the signal()
>>syscall.
>>
>>-Hans
> 
> 
> Then it gets real simple. Just use jiffies, if you can stand the [...]
I fear that there is still some miss-understanding. Jiffies are totally 
OK for me. I can use them without any conversion.

I'll try to formulate the problem with some other words:

I hope that there is is something like a "jiffie-counter" for the 
keyboard driver, that stores the actual jiffies value whenever a 
keyboard interrupt occurs.

I hope too, that there is a way to query that "jiffie-counter" from 
another kernel driver, so that I can write something like


mymouse_module.c

...
void mouse_event(){

    // get the current time in jiffies
    int now=jiffies;

    // get the jiffie value of the last kbd event
    int last_kbd_event= ????;  // ... but how to do that ...

    if ((now - last_kbd_event) > delay) {
	do_some_very_smart_things();
    }
   }
...

-Hans



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-06 19:05           ` Hans-Georg Thien
@ 2003-10-06 19:33             ` Richard B. Johnson
  2003-10-06 21:59               ` Hans-Georg Thien
  0 siblings, 1 reply; 14+ messages in thread
From: Richard B. Johnson @ 2003-10-06 19:33 UTC (permalink / raw)
  To: Hans-Georg Thien; +Cc: Kernel Mailing List

On Mon, 6 Oct 2003, Hans-Georg Thien wrote:

> Richard B. Johnson wrote:
>
> > On Mon, 6 Oct 2003, Hans-Georg Thien wrote:
> >
> >>
> >>[...]
> >>I'm writing a kernel mode device driver (mouse).
> >>
> >>In that device driver I need the timestamp of the last event for another
> >>kernel mode device (keyboard).
> >>
> >>I do not care if that timestamp is in jiffies or in gettimeofday()
> >>format or whatever format does exist in the world. I am absolutely sure
> >>I can convert it somehow to fit my needs.
> >>
> >>But since it is a kernel mode driver it can not -AFAIK- use the signal()
> >>syscall.
> >>
> >>-Hans
> >
> >
> > Then it gets real simple. Just use jiffies, if you can stand the [...]
> I fear that there is still some miss-understanding. Jiffies are totally
> OK for me. I can use them without any conversion.
>
> I'll try to formulate the problem with some other words:
>
> I hope that there is is something like a "jiffie-counter" for the
> keyboard driver, that stores the actual jiffies value whenever a
> keyboard interrupt occurs.
>

Well the keyboard driver and the mouse driver are entirely
different devices.

The keyboard has a built-int CPU that generates scan-codes for
every key-press/key-release. It also performs auto-repeat. The
mouse generates mouse data at each interrupting event. This data
represents direction and three key events. Wheel mouse have may
have additional data, I haven't looked at them. They are not
related in any way.


> I hope too, that there is a way to query that "jiffie-counter" from
> another kernel driver, so that I can write something like
>
>
> mymouse_module.c
>
> ...
> void mouse_event(){
>
>     // get the current time in jiffies
>     int now=jiffies;
>
>     // get the jiffie value of the last kbd event
>     int last_kbd_event= ????;  // ... but how to do that ...
>
>     if ((now - last_kbd_event) > delay) {
> 	do_some_very_smart_things();
>     }
>    }
> ...
>

Now this pseudo-code shows a "last_kbd_event", not a mouse-
event as shown in:

> >>I'm writing a kernel mode device driver (mouse).

... your words, not mine.

I presume that you are replacing the existing mouse-driver.
If so, your mouse-buffer, i.e., the place you put the
mouse-event movement-codes can be something like:

struct mouse_event {
    unsigned long time;
    int mouse_code;
    }

You allocate a buffer of this type and, during each interrupt,
you put both the jiffie-time and the mouse code into your buffer.

If you are not replacing the existing mouse driver, then you
need to share its interrupt with your new module. The new
module records the time-stamp of each of the interrupts, only.

Every bit of mouse-data was obtained as a result of an interrupt.
Using that knowledge, you should be able to correlate a time-stamp
to mouse-data (clear your time-stamp buffer when no mouse data
are available).

If you are using the keyboard, not the mouse, then the same
things apply.

If you just want to patch the existing keyboard or mouse
ISR to save a time-stamp in your module code, you need to
make the built-in keyboard or mouse ISR code call a function
by pointer. This pointer must be initialized to point to a
stub that simply returns. You need to export this symbol
so it can be found by your module.

When your module is installed, it saves the value in that
pointer. It then changes the pointer value to the address of
your routine. It needs to do this under a spin-lock.

When your module is un-installed, it needs to restore the
previous (saved) value of that pointer.

Whatever code you make that pointer point-to, must be
interrupt-safe. It can get the jiffie-count and put it
into a buffer, then return.


Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
            Note 96.31% of all statistics are fiction.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-06 19:33             ` Richard B. Johnson
@ 2003-10-06 21:59               ` Hans-Georg Thien
  0 siblings, 0 replies; 14+ messages in thread
From: Hans-Georg Thien @ 2003-10-06 21:59 UTC (permalink / raw)
  To: root; +Cc: Kernel Mailing List

Richard B. Johnson wrote:

> On Mon, 6 Oct 2003, Hans-Georg Thien wrote:
> 
> 
>>Richard B. Johnson wrote:
>>
>>
>>>On Mon, 6 Oct 2003, Hans-Georg Thien wrote:
>>>
>>>
>>>>[...]
>>>>I'm writing a kernel mode device driver (mouse).
>>>>
>>>>In that device driver I need the timestamp of the last event for another
>>>>kernel mode device (keyboard).
>>>>
>>>>I do not care if that timestamp is in jiffies or in gettimeofday()
>>>>format or whatever format does exist in the world. I am absolutely sure
>>>>I can convert it somehow to fit my needs.
>>>>
>>>>But since it is a kernel mode driver it can not -AFAIK- use the signal()
>>>>syscall.
>>>>
>>>>-Hans
>>>
>>>
>>>Then it gets real simple. Just use jiffies, if you can stand the [...]
>>
>>I fear that there is still some miss-understanding. Jiffies are totally
>>OK for me. I can use them without any conversion.
>>
>>I'll try to formulate the problem with some other words:
>>
>>I hope that there is is something like a "jiffie-counter" for the
>>keyboard driver, that stores the actual jiffies value whenever a
>>keyboard interrupt occurs.
>>
> 
> 
> Well the keyboard driver and the mouse driver are entirely
> different devices.
> 
yes, - I know

> The keyboard has a built-int CPU that generates scan-codes for
> every key-press/key-release. It also performs auto-repeat. The
> mouse generates mouse data at each interrupting event. This data
> represents direction and three key events. Wheel mouse have may
> have additional data, I haven't looked at them. They are not
> related in any way.
> 
yes, - I know

> 
> 
>>I hope too, that there is a way to query that "jiffie-counter" from
>>another kernel driver, so that I can write something like
>>
>>
>>mymouse_module.c
>>
>>...
>>void mouse_event(){
>>
>>    // get the current time in jiffies
>>    int now=jiffies;
>>
>>    // get the jiffie value of the last kbd event
>>    int last_kbd_event= ????;  // ... but how to do that ...
>>
>>    if ((now - last_kbd_event) > delay) {
>>	do_some_very_smart_things();
>>    }
>>   }
>>...
>>
> 
> 
> Now this pseudo-code shows a "last_kbd_event", not a mouse-
> event as shown in:
> 
yes, - I know =8))

It is because I want do some things with the mouse in relation to 
keyboard events.

> 
> [... a quite detailed explanation on mouse interrupts, mouse data ...]
yes, I know. But my question was: how can I get the timestamp of the 
last keyboard interrupt.

> When your module is un-installed, it needs to restore the
> previous (saved) value of that pointer.
> 
yes, - I know

> Whatever code you make that pointer point-to, must be
> interrupt-safe. It can get the jiffie-count and put it
> into a buffer, then return.
>
yes, - I know

Hey Richard, - what is so difficult to understand ?

Anyway, - have you read the email reply from Gabriel Paubert regarding 
this topic? Sounds very good for a 2.6.x kernel. It seems that I can use 
the /dev/input/event? device files. I have just modprobed the "evdev" 
module. It seems that I can get my timestamps by reading one of this 
files. Have to investigate still which one of them I have to use.

-Hans



^ permalink raw reply	[flat|nested] 14+ messages in thread

* getting timestamp of last interrupt?
  2003-10-02 17:40       ` getting timestamp of last interrupt? Hans-Georg Thien
  2003-10-02 18:54         ` Karim Yaghmour
  2003-10-02 18:59         ` Richard B. Johnson
@ 2003-10-02 22:46         ` Peter Chubb
  2 siblings, 0 replies; 14+ messages in thread
From: Peter Chubb @ 2003-10-02 22:46 UTC (permalink / raw)
  To: Hans-Georg Thien; +Cc: linux-kernel

>>>>> "Hans-Georg" == Hans-Georg Thien <1682-600@onlinehome.de> writes:

Hans-Georg> I am looking for a possibility to read out the last
Hans-Georg> timestamp when an interrupt has occured.

Hans-Georg> e.g.: the user presses a key on the keyboard. Where can I
Hans-Georg> read out the timestamp of this event?

Hans-Georg> To be more precise, I 'm looking for

Hans-Georg> ( )a function call ( ) a callback where I can register to
Hans-Georg> be notified when an event occurs ( ) a global accessible
Hans-Georg> variable ( ) a /proc entry

Hans-Georg> or something like that.

Hans-Georg> Any ideas ?

If you have the microstate accoounting patch applied, then the
timestamp of each  last IRQ is in the array msa_irq_entered[cpu][irq],
measured as an architecture-specific number.  Convert it to
nanoseconds since boot with MSA_TO_NSEC


Peter C

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-02 17:40       ` getting timestamp of last interrupt? Hans-Georg Thien
  2003-10-02 18:54         ` Karim Yaghmour
@ 2003-10-02 18:59         ` Richard B. Johnson
  2003-10-02 22:46         ` Peter Chubb
  2 siblings, 0 replies; 14+ messages in thread
From: Richard B. Johnson @ 2003-10-02 18:59 UTC (permalink / raw)
  To: Hans-Georg Thien; +Cc: linux-kernel

On Thu, 2 Oct 2003, Hans-Georg Thien wrote:

> I am looking for a possibility to read out the last timestamp when an
> interrupt has occured.
>
> e.g.: the user presses a key on the keyboard. Where can I read out the
> timestamp of this event?

You can get A SIGIO signal for every keyboard, (or other input) event.
What you do with it is entirely up to you. Linux/Unix doesn't have
"callbacks", instead it has signals. It also has select() and poll(),
all useful for handling such events. If you want a time-stamp, you
call gettimeofday() in your signal handler.


Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
            Note 96.31% of all statistics are fiction.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: getting timestamp of last interrupt?
  2003-10-02 17:40       ` getting timestamp of last interrupt? Hans-Georg Thien
@ 2003-10-02 18:54         ` Karim Yaghmour
  2003-10-02 18:59         ` Richard B. Johnson
  2003-10-02 22:46         ` Peter Chubb
  2 siblings, 0 replies; 14+ messages in thread
From: Karim Yaghmour @ 2003-10-02 18:54 UTC (permalink / raw)
  To: Hans-Georg Thien; +Cc: linux-kernel


Hans-Georg Thien wrote:
> I am looking for a possibility to read out the last timestamp when an 
> interrupt has occured.
> 
> e.g.: the user presses a key on the keyboard. Where can I read out the 
> timestamp of this event?
> 
> To be more precise, I 'm looking for
> 
> ( )a function call
> ( ) a callback where I can register to be notified when an event occurs
> ( ) a global accessible variable
> ( ) a /proc entry
> 
> or something like that.
> 
> Any ideas ?

Have a look at the Linux Trace Toolkit:
http://www.opersys.com/LTT/
It records micro-second time-stamps for quite a few events, including
interrupts.

HTH,

Karim
-- 
Author, Speaker, Developer, Consultant
Pushing Embedded and Real-Time Linux Systems Beyond the Limits
http://www.opersys.com || karim@opersys.com || 514-812-4145


^ permalink raw reply	[flat|nested] 14+ messages in thread

* getting timestamp of last interrupt?
  2003-05-27 21:10     ` wwp
@ 2003-10-02 17:40       ` Hans-Georg Thien
  2003-10-02 18:54         ` Karim Yaghmour
                           ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Hans-Georg Thien @ 2003-10-02 17:40 UTC (permalink / raw)
  To: linux-kernel

I am looking for a possibility to read out the last timestamp when an 
interrupt has occured.

e.g.: the user presses a key on the keyboard. Where can I read out the 
timestamp of this event?

To be more precise, I 'm looking for

( )a function call
( ) a callback where I can register to be notified when an event occurs
( ) a global accessible variable
( ) a /proc entry

or something like that.

Any ideas ?

- Hans



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2003-10-06 21:59 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <fa.fj0euih.s2sbop@ifi.uio.no>
     [not found] ` <fa.fvjdidn.13ni70f@ifi.uio.no>
2003-10-04  4:03   ` getting timestamp of last interrupt? Hans-Georg Thien
2003-10-06 12:52     ` Richard B. Johnson
2003-10-06 18:21       ` Hans-Georg Thien
2003-10-06 18:34         ` Richard B. Johnson
2003-10-06 19:05           ` Hans-Georg Thien
2003-10-06 19:33             ` Richard B. Johnson
2003-10-06 21:59               ` Hans-Georg Thien
     [not found] ` <fa.ch95hks.10kepak@ifi.uio.no>
2003-10-04  4:05   ` Hans-Georg Thien
2003-10-06 15:26     ` Gabriel Paubert
2003-10-06 18:37       ` Hans-Georg Thien
2003-05-01 21:48 [RFC][PATCH] "Disable Trackpad while typing" on Notebooks withh a PS/2 Trackpad Hans-Georg Thien
2003-05-08 19:12 ` [RFC][PATCH] "Disable Trackpad while typing" on Notebooks withh aPS/2 Trackpad Khalid Aziz
2003-05-27 20:47   ` Hans-Georg Thien
2003-05-27 21:10     ` wwp
2003-10-02 17:40       ` getting timestamp of last interrupt? Hans-Georg Thien
2003-10-02 18:54         ` Karim Yaghmour
2003-10-02 18:59         ` Richard B. Johnson
2003-10-02 22:46         ` Peter Chubb

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).