[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <AANLkTikZhikQ+Ag8++NpMn5vWPmTkeEmVCE6s5TCfdGr@mail.gmail.com>
Date: Tue, 16 Nov 2010 19:55:59 -0800
From: Colin Cross <ccross@...roid.com>
To: Harald Gustafsson <harald.gustafsson@...csson.com>
Cc: Russell King - ARM Linux <linux@....linux.org.uk>,
Linus Walleij <linus.ml.walleij@...il.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
srinidhi kasagar <srinidhi.kasagar@...ricsson.com>,
Varun Swara <Varun.Swara@....com>,
Catalin Marinas <catalin.marinas@....com>,
Rickard ANDERSSON <Rickard.Andersson@...ricsson.com>,
Rob Herring <robherring2@...il.com>
Subject: Re: [PATCH] [ARM] twd: Allow twd rescaling to match cpu frequency
On Fri, Nov 12, 2010 at 5:05 AM, Harald Gustafsson
<harald.gustafsson@...csson.com> wrote:
>> > Don't forget the other patches to make this work:
>> >
>> > [ARM] twd: Always calibrate local timer [ARM] twd: Fix updating
>> > control register in set_mode [ARM] twd: Fix prescaler
>> getting cleared
>> > by set_mode
>>
>> ... which have never been posted to this mailing list, so no
>> one here knows of them.
>
> They are on the tegra branch git also authored by Colin. So I would suggest that Colin make all the changes into a new patch.
>
> http://android.git.kernel.org/?p=kernel%2Ftegra.git&a=search&h=refs%2Fheads%2Flinux-tegra-2.6.35&st=commit&s=twd
>
> /Harald
I'm not happy with the current implementation, which is why it hasn't
been posted. I'm planning to rewrite it with cpufreq notifiers, but
that brings us back to the periphclk divider problem discussed in
http://comments.gmane.org/gmane.linux.ports.arm.kernel/91827
If the frequency is going to change, using clk_get_rate on periphclk
is not sufficient, because the clock will not have been updated when
the prechange cpufreq notifier is called. If the cpu frequency is
increasing, the twd divider must be recalculated before the frequency
changes to avoid timers expiring early. Either the clock used by the
twd driver must be updated before prechange notifiers and after
postchange notifiers, which is difficult to fit in to all the
different implementations of the clock api, or the twd driver needs to
know the ratio between the cpu frequency and the periphclk frequency.
--
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