[PATCH 6/6 v6] cpufreq, highbank: add support for highbank cpufreq
From: Mark Langsdorf <hidden>
Date: 2012-11-28 13:16:11
Also in:
linux-devicetree, linux-pm, lkml
From: Mark Langsdorf <hidden>
Date: 2012-11-28 13:16:11
Also in:
linux-devicetree, linux-pm, lkml
On 11/27/2012 08:32 PM, Shawn Guo wrote:
On Tue, Nov 27, 2012 at 02:04:32PM -0600, Mark Langsdorf wrote:quoted
Highbank processors depend on the external ECME to perform voltage management based on a requested frequency. Communication between the A9 cores and the ECME happens over the pl320 IPC channel....quoted
+static int hb_voltage_change(unsigned int freq) +{ + int i; + u32 msg[7]; + + msg[0] = HB_CPUFREQ_CHANGE_NOTE; + msg[1] = freq / 1000; + for (i = 2; i < 7; i++) + msg[i] = 0; + + return pl320_ipc_transmit(msg);Is it possible to have this handled inside clk_set_rate() call of cpu clock?
Standard practice is to have cpufreq_set_target() handle voltage transitions and leave clk_set_rate() handle the frequency changes. I'd have to move most of the logic of hb_set_target() into clk_highbank.c:clk_pll_set_rate() and then add extra logic for when cpufreq is not enabled/loaded. I don't think the clk maintainers would take that patch, either. So no. --Mark Langsdorf Calxeda, Inc.