From: kagey <kyl...@ma...> - 2008-08-20 15:44:39
|
I have a piece of code like this: asm volatile("rdtsc":"=A" (a)); I need to replace it with something that gives the same result - count of ticks from processor reset. Any ideas? -- View this message in context: http://www.nabble.com/help-replace-an-x86-instruction-for-connex-tp19070621p19070621.html Sent from the Gumstix mailing list archive at Nabble.com. |
From: Dave H. <dhy...@gm...> - 2008-08-20 16:20:00
|
Hi kagey, On Wed, Aug 20, 2008 at 8:44 AM, kagey <kyl...@ma...> wrote: > > I have a piece of code like this: > > asm volatile("rdtsc":"=A" (a)); > > I need to replace it with something that gives the same result - count of > ticks from processor reset. Any ideas? The arm doesn't have a count of processor ticks. The highest resolution timer that's available is one of the ones based on the 3.something5 MHz internal timer. I think that there are 4 available, and only one is used by the kernel. Is this usermode code? or kernel mode code? -- Dave Hylands Vancouver, BC, Canada http://www.DaveHylands.com/ |
From: kagey <kyl...@ma...> - 2008-08-20 18:38:01
|
> Is this usermode code? or kernel mode code? It's usermode code. I believe the gist of it is to get a tick count fast... so whatever will do that for me. I'm not familiar with the arm instruction set so I don't know what is available, or how to get at it. -- View this message in context: http://www.nabble.com/help-replace-an-x86-instruction-for-connex-tp19070621p19075610.html Sent from the Gumstix mailing list archive at Nabble.com. |
From: Dave H. <dhy...@gm...> - 2008-08-20 21:55:58
|
Hi kagey, >> Is this usermode code? or kernel mode code? > > It's usermode code. I believe the gist of it is to get a tick count fast... > so whatever will do that for me. I'm not familiar with the arm instruction > set so I don't know what is available, or how to get at it. >From usermode, the best you can do is to call gettimeofday. Not particularly fast, since it's a system call. The only other thing to do would be to mmap in the OSCx registers and read one of the registers directly. -- Dave Hylands Vancouver, BC, Canada http://www.DaveHylands.com/ |