clk: Vexpress-spc: Add clock driver
authorViresh Kumar <viresh.kumar@linaro.org>
Fri, 23 Nov 2012 19:21:07 +0000 (00:51 +0530)
committerJon Medhurst <tixy@linaro.org>
Mon, 1 Jul 2013 10:06:06 +0000 (11:06 +0100)
commit07ae43edc3b2e692356671f9444832fc291ae093
tree57b2799e0dfd8dcd3e43577899894be22bbd9fbe
parent9c218a698947120c0b0463468685f34bff0171e7
clk: Vexpress-spc: Add clock driver

This patch adds spc clock controller. In Vexpress cpu cluster clock is controlled via
spc controller and so it must be present in clk framework.

vexpress_clk_[of_]register_spc() registers cluster clocks with and without DT.
These are added as root clocks without any parents and their names are
"cluster[0|1|..]".

Now, platform must add clocks of all the cpus below these clusters. cpufreq
driver would get cpu clock and will do clk_get[set]_rate() on cpu clock, which
will then pass it to cluster clocks. And finally spc will get programmed.

This patch doesn't add non-DT clocks for clusters and cpus as i don't see a user
of that for now.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
drivers/clk/versatile/Makefile
drivers/clk/versatile/clk-vexpress-spc.c [new file with mode: 0644]
include/linux/vexpress.h