Thread (36 messages) 36 messages, 7 authors, 2013-04-04
STALE4810d

[PATCH 07/10] ARM: OMAP5: clock data: Add OMAP54XX full clock tree and headers

From: Jon Hunter <hidden>
Date: 2013-01-30 17:37:41
Also in: linux-omap

On 01/18/2013 09:27 AM, Santosh Shilimkar wrote:
From: Rajendra Nayak <redacted>

Add the clock tree related data for OMAP54xx platforms.
[snip]
+	CLK("omap_timer.1",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.2",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.3",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.4",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.5",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.6",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.7",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.8",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.9",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.10",	"32k_ck",		&sys_32k_ck,	CK_54XX),
+	CLK("omap_timer.11",	"32k_ck",		&sys_32k_ck,	CK_54XX),
I have been trying to get away from having so many aliases for the same
clock for timers. Here we should replace all of the above and just have ...

+	CLK(NULL,	"timer_32k_ck",		&sys_32k_ck, CK_54XX),

For more details see [1].
+	CLK("omap_timer.1",	"sys_ck",		&sys_clkin,	CK_54XX),
+	CLK("omap_timer.2",	"sys_ck",		&sys_clkin,	CK_54XX),
+	CLK("omap_timer.3",	"sys_ck",		&sys_clkin,	CK_54XX),
+	CLK("omap_timer.4",	"sys_ck",		&sys_clkin,	CK_54XX),
+	CLK("omap_timer.9",	"sys_ck",		&sys_clkin,	CK_54XX),
+	CLK("omap_timer.10",	"sys_ck",		&sys_clkin,	CK_54XX),
+	CLK("omap_timer.11",	"sys_ck",		&sys_clkin,	CK_54XX),
+	CLK("omap_timer.5",	"sys_ck",		&dss_syc_gfclk_div,	CK_54XX),
+	CLK("omap_timer.6",	"sys_ck",		&dss_syc_gfclk_div,	CK_54XX),
+	CLK("omap_timer.7",	"sys_ck",		&dss_syc_gfclk_div,	CK_54XX),
+	CLK("omap_timer.8",	"sys_ck",		&dss_syc_gfclk_div,	CK_54XX),
+};
These aliases will not work with device-tree because the device-name is
formatted <addr>.<device>. Hence, when configuring a the timer parent
clock via the dmtimer driver it will fail. So it should be more like ...

+	CLK("4ae18000.timer",	"timer_sys_ck",	&sys_clkin, CK_54XX),
+	CLK("48032000.timer",	"timer_sys_ck",	&sys_clkin, CK_54XX),
+	CLK("48034000.timer",	"timer_sys_ck",	&sys_clkin, CK_54XX),
+	CLK("48036000.timer",	"timer_sys_ck",	&sys_clkin, CK_54XX),
+	CLK("40138000.timer",	"timer_sys_ck",	&sys_clkin, CK_54XX),
+	CLK("4013a000.timer",	"timer_sys_ck",	&sys_clkin, CK_54XX),
+	CLK("4013c000.timer",	"timer_sys_ck",	&sys_clkin, CK_54XX),
+	CLK("4013e000.timer",	"timer_sys_ck",	&dss_syc_gfclk_div, 	
CK_54XX),
+	CLK("4803e000.timer",	"timer_sys_ck",	&dss_syc_gfclk_div, CK_54XX),
+	CLK("48086000.timer",	"timer_sys_ck",	&dss_syc_gfclk_div, CK_54XX),
+	CLK("48088000.timer",	"timer_sys_ck",	&dss_syc_gfclk_div, CK_54XX),

For more details see [2].

If you would like to test the dmtimer driver on omap5, then you can grab
my omap-test module [3], build it (see README), load it and then ...

# echo 1 > /sys/kernel/debug/omap-test/timer/all

This will perform some basic tests on all the dmtimers. I would do it
myself, but there appears to be several issues getting this to boot on
an ES1.0 (which is probably expected).

Cheers
Jon

[1] http://www.spinics.net/lists/linux-omap/msg71272.html
[2] https://patchwork.kernel.org/patch/1204351/
[3] https://github.com/jonhunter/omap-test
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help