[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <5d96567b0805311120w516b0064h55a211c707a1dbae@mail.gmail.com>
Date: Sat, 31 May 2008 21:20:55 +0300
From: Raz <raziebe@...il.com>
To: "Lee Revell" <rlrevell@...-job.com>
Cc: "Linux Kernel" <linux-kernel@...r.kernel.org>
Subject: Re: mmap over HPET - 32 bit wrap arround
On Thu, May 29, 2008 at 2:57 AM, Lee Revell <rlrevell@...-job.com> wrote:
> On Wed, May 28, 2008 at 6:19 PM, Raz <raziebe@...il.com> wrote:
>> I am wondering wether someone can explain how hpet behaves. The bellow
>> is a short program that reads from a mmaped /dev/hpet the time. I am
>> running it and it looks that afer ~296 seconds the counter resets . I
>> AM RUNNING 64bi KERNEL(2.6.18-8.el5) and reading a 64BIT VARIABLE.
>> my hpet is 14MHZ, so I am guessing a 32bit wraparound ( ~296 * 14Mhz
>> ) = MAX_INT . but why ?
>>
>
> HPET counter can be either 32 or 64 bit. Check COUNT_SIZE_CAP.
>
> http://www.intel.com/hardwaredesign/hpetspec_1.pdf
>
> Lee
>
Thank you Lee for your response. According to the SPEC I debugged and found:
section :2.3.4 Main Capabilities and ID Register
bit 13: HPET_COUNTER_SIZE_MASK & readq(&hpet->hpet_cap) is on.
indicates 64bit timer.
section 2.4.8 Timer n Configuration and Capabilties Register
bit 5 on Tn_SIZE_CAP is to 32bit. Problem is that it is readonly( page
18 in spec).
None of the above counters is 64bit, and there is no BIOS settings for
hpet ( T61 Lenovo ).
Furthermore , I have 3 timers , and only a single /dev/hpet. why ?
thank you
--
Raz
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists