From: "Vesa Jääskeläinen" <chaac@nic.fi>
To: The development of GRUB 2 <grub-devel@gnu.org>
Subject: Re: Higher resolution timers
Date: Sun, 18 May 2008 19:27:05 +0300 [thread overview]
Message-ID: <483058D9.6060701@nic.fi> (raw)
In-Reply-To: <20080512093354.2770e1cf@gibibit.com>
Colin D Bennett wrote:
> To implement a nice GUI with some animations, it will be important to
> have a timer with a better resolution than 1/18 second (which appears
> to be the current GRUB timer resolution on the PC).
>
> What would be the best way to do this? Possibilities that I am aware of
> are:
> * RDTSC instruction (must calibrate with RTC at startup?)
> * HPET (complex to use?)
> * RTC (can we set the timer interrupt rate to >18 Hz?)
>
> Does anyone have any thoughts on these options?
>
> I think that using the TSC (w/ RDTSC instruction) and calibrating it
> with a quick 2-3 RTC tick loop at startup might be the easiest option.
Hi Colin,
What kind of accuracy would you need?
I am just wondering if you just define function like:
grub_uint64_t
grub_timer_[nu]time(void);
This could return time in nanoseconds, or microseconds from epoch.
Then during grub init you would call some platform function to
initialize time (calibrate when using rdtsc), and set proper offset
value so you get correct time when asking for time. On every system it
would return time in this format, but granularity would be different.
This could be:
void
grub_timer_init(void)
What do you think?
Thanks,
Vesa Jääskeläinen
next prev parent reply other threads:[~2008-05-18 16:27 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-12 16:33 Higher resolution timers Colin D Bennett
2008-05-14 16:26 ` Vesa Jääskeläinen
2008-05-18 16:27 ` Vesa Jääskeläinen [this message]
2008-05-20 17:20 ` Colin D Bennett
2008-05-20 17:46 ` Colin D Bennett
2008-05-23 11:55 ` Marco Gerards
2008-05-23 14:28 ` Colin D Bennett
2008-05-24 9:23 ` Marco Gerards
2008-05-28 13:43 ` Robert Millan
2008-05-23 11:48 ` Marco Gerards
2008-05-24 15:25 ` Vesa Jääskeläinen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=483058D9.6060701@nic.fi \
--to=chaac@nic.fi \
--cc=grub-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.