lkml.org 
[lkml]   [2003]   [Aug]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRE: [PATCH][2.6][2/5]Support for HPET based timer
On Tue, 26 Aug 2003 11:31:16 -0700, "Pallipadi, Venkatesh" wrote:
> This is an update on the option of using some sort of early_ioremap in
>place of fixmap for
>HPET timers.
>
>Problem Description:
> The requirement from HPET side is, we need to map HPET physical
>address during timer_init()
>routine and also during any read/write HPET addresses. We need to have
>this mapping kind of
>permanently, as we will do HPET reads/writes during every timer
>interrupt and also during
>every gettimeofday (if we don't use tsc timer).
> And the timer_init() happens before mem_init() (but after paging
>init()), so we cannot
>directly use ioremap(). Current implementation is using a separate
>fixmap region for HPET.
...
>The question I have is,
>- Is it really worth to move from the current fixmap implementation to
>bt_ioremap/ioremap
>combination, given all the changes that is required?
>- Isn't current implementation (using own fixmap) a cleaner way to do
>it? Only drawback
>I see is it consumes one page in virtual memory when HPET is configured,
>irrespective of
>HPET is used at run time or not.

As long as you _must_ map the HPET before ioremap() is working,
and you also must have a permanent mapping, then grabbing a fixmap
page is IMO the cleanest solution. This is for example how the
local APIC mapping is handled. boot/bt ioremap are as you noticed
for temporary mappings only.

However, dynamically migrating the timer to HPET after mem_init()
would be even better, since that avoids the problem altogether.

/Mikael
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:48    [W:0.030 / U:1.672 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site