[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201102151733.30332.jeremy.kerr@canonical.com>
Date: Tue, 15 Feb 2011 17:33:29 +0800
From: Jeremy Kerr <jeremy.kerr@...onical.com>
To: "Russell King - ARM Linux" <linux@....linux.org.uk>
Cc: Saravana Kannan <skannan@...eaurora.org>,
linux-arm-kernel@...ts.infradead.org,
Nicolas Pitre <nicolas.pitre@...aro.org>,
Lorenzo Pieralisi <Lorenzo.Pieralisi@....com>,
linux-sh@...r.kernel.org,
Ben Herrenschmidt <benh@...nel.crashing.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Paul Mundt <lethal@...ux-sh.org>, linux-kernel@...r.kernel.org,
Dima Zavin <dmitriyz@...gle.com>,
Ben Dooks <ben-linux@...ff.org>,
"Uwe Kleine-König"
<u.kleine-koenig@...gutronix.de>,
Vincent Guittot <vincent.guittot@...aro.org>
Subject: Re: [RFC,PATCH 1/3] Add a common struct clk
Hi Russell,
> > Why is that? Consider two devices using one clock; one does some
> > initialisation based on the return value of clk_get_rate(), the other
> > calls clk_set_rate() some time later. Now the first device is
> > incorrectly initialised.
>
> What about a clock sourced from a PLL which provides the dotclock for a
> framebuffer device? On every mode set, should the clk have to be disabled,
> unprepared, rate set, re-prepared and re-enabled?
Sounds heavy-handed, but I honestly have no idea if that's reasonable or not.
Other options are:
* Require that the driver has called clk_prepare, and that prepare_count
is 1 during the set_rate call (indicating that this is the only user); or
* Leave the set_rate and set_parent semantics as-is and assume that anything
calling either knows what it's doing (and that it won't affect other
devices)
Are you OK if we address this separately to the API unification though?
Cheers,
Jeremy
--
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