From: Kevin Hilman <khilman@deeprootsystems.com>
To: "Karicheri\, Muralidharan" <m-karicheri2@ti.com>
Cc: "davinci-linux-open-source\@linux.davincidsp.com"
<davinci-linux-open-source@linux.davincidsp.com>,
"linux-media\@vger.kernel.org" <linux-media@vger.kernel.org>
Subject: Re: [PATCH - v1 1/2] V4L - vpfe capture - make clocks configurable
Date: Fri, 11 Dec 2009 10:34:34 -0800 [thread overview]
Message-ID: <871vj1iclh.fsf@deeprootsystems.com> (raw)
In-Reply-To: <A69FA2915331DC488A831521EAE36FE40155C80BFC@dlee06.ent.ti.com> (Muralidharan Karicheri's message of "Thu\, 10 Dec 2009 14\:02\:22 -0600")
"Karicheri, Muralidharan" <m-karicheri2@ti.com> writes:
>>> Kevin,
>>>
>>> I think I have figured it out...
>>>
>>> First issue was that I was adding my entry at the end of dm644x_clks[]
>>> array. I need to add it before the CLK(NULL, NULL, NULL)
>>>
>>> secondly, your suggestion didn't work as is. This is what I had to
>>> do to get it working...
>>>
>>> static struct clk ccdc_master_clk = {
>>> .name = "dm644x_ccdc",
>>> .parent = &vpss_master_clk,
>>> };
>>>
>>> static struct clk ccdc_slave_clk = {
>>> .name = "dm644x_ccdc",
>>> .parent = &vpss_slave_clk,
>>> };
>
> It doesn't work with out doing this. The cat /proc/davinci_clocks hangs with
> your suggestion implemented...
Can you track down the hang. It sounds like a bug in the walking of
the clock tree for davinci_clocks.
>>
>>You should not need to add new clocks with new names. I don't thinke
>>the name field of the struct clk is used anywhere in the matching.
>>I think it's only used in /proc/davinci_clocks
>>
>>> static struct davinci_clk dm365_clks = {
>>> ....
>>> ....
>>> CLK("dm644x_ccdc", "master", &ccdc_master_clk),
>>> CLK("dm644x_ccdc", "slave", &ccdc_slave_clk),
>>
>>Looks like the drivers name is 'dm644x_ccdc', not 'isif'. I'm
>>guessing just this should work without having to add new clock names.
>>
> No. I have mixed up the names. ISIF is for the new ISIF driver on DM365.
> Below are for DM644x ccdc driver. With just these entries added, two
> things observed....
>
> 1) Only one clock is shown disabled (usually many are shown disabled) during bootup
> 2) cat /proc/davinci_clocks hangs.
>
> So this is the only way I got it working.
Hmm, it worked just fine for me without any of these side effects. I
applied the simple patch below on top of current master branch. It booted
fine showing all the unused clocks being disabled, and I was able to
see davinci_clocks just fine:
diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-davinci/dm644x.c
index e65e29e..e6f3570 100644
--- a/arch/arm/mach-davinci/dm644x.c
+++ b/arch/arm/mach-davinci/dm644x.c
@@ -293,8 +293,8 @@ struct davinci_clk dm644x_clks[] = {
CLK(NULL, "dsp", &dsp_clk),
CLK(NULL, "arm", &arm_clk),
CLK(NULL, "vicp", &vicp_clk),
- CLK(NULL, "vpss_master", &vpss_master_clk),
- CLK(NULL, "vpss_slave", &vpss_slave_clk),
+ CLK("dm644x_ccdc", "master", &vpss_master_clk),
+ CLK("dm644x_ccdc", "slave", &vpss_slave_clk),
CLK(NULL, "arm", &arm_clk),
CLK(NULL, "uart0", &uart0_clk),
CLK(NULL, "uart1", &uart1_clk),
[...]
Clocks: disable unused uart1
Clocks: disable unused uart2
Clocks: disable unused emac
Clocks: disable unused ide
Clocks: disable unused asp0
Clocks: disable unused mmcsd
Clocks: disable unused spi
Clocks: disable unused usb
Clocks: disable unused vlynq
Clocks: disable unused pwm0
Clocks: disable unused pwm1
Clocks: disable unused pwm2
Clocks: disable unused timer1
[...]
root@DM644x:~# uname -r
2.6.32-arm-davinci-default-06873-g1a7277b-dirty
root@DM644x:~# cat /debug/davinci_clocks
ref_clk users= 8 27000000 Hz
pll1 users= 8 pll 594000000 Hz
pll1_sysclk1 users= 0 pll 594000000 Hz
dsp users= 1 psc 594000000 Hz
pll1_sysclk2 users= 2 pll 297000000 Hz
arm users= 2 psc 297000000 Hz
pll1_sysclk3 users= 0 pll 198000000 Hz
vpss_master users= 0 psc 198000000 Hz
vpss_slave users= 0 psc 198000000 Hz
pll1_sysclk5 users= 3 pll 99000000 Hz
emac users= 1 psc 99000000 Hz
ide users= 0 psc 99000000 Hz
asp0 users= 0 psc 99000000 Hz
mmcsd users= 0 psc 99000000 Hz
spi users= 0 psc 99000000 Hz
gpio users= 1 psc 99000000 Hz
usb users= 0 psc 99000000 Hz
vlynq users= 0 psc 99000000 Hz
aemif users= 1 psc 99000000 Hz
pll1_aux_clk users= 3 pll 27000000 Hz
uart0 users= 1 psc 27000000 Hz
uart1 users= 0 psc 27000000 Hz
uart2 users= 0 psc 27000000 Hz
i2c users= 1 psc 27000000 Hz
pwm0 users= 0 psc 27000000 Hz
pwm1 users= 0 psc 27000000 Hz
pwm2 users= 0 psc 27000000 Hz
timer0 users= 1 psc 27000000 Hz
timer1 users= 0 psc 27000000 Hz
timer2 users= 1 psc 27000000 Hz
pll1_sysclkbp users= 0 pll 27000000 Hz
pll2 users= 0 pll 648000000 Hz
pll2_sysclk1 users= 0 pll 54000000 Hz
pll2_sysclk2 users= 0 pll 324000000 Hz
pll2_sysclkbp users= 0 pll 13500000 Hz
root@DM644x:~#
next prev parent reply other threads:[~2009-12-11 18:34 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-01 17:18 [PATCH - v1 1/2] V4L - vpfe capture - make clocks configurable m-karicheri2
2009-12-01 17:19 ` [PATCH - v0 2/2] DaVinci - vpfe capture - Make " m-karicheri2
2009-12-03 6:40 ` Hiremath, Vaibhav
2009-12-03 15:55 ` Karicheri, Muralidharan
2009-12-08 17:27 ` Hiremath, Vaibhav
2009-12-08 20:09 ` Karicheri, Muralidharan
2009-12-04 23:12 ` Karicheri, Muralidharan
2009-12-09 16:00 ` [PATCH - v1 1/2] V4L - vpfe capture - make " Kevin Hilman
2009-12-09 17:16 ` Karicheri, Muralidharan
2009-12-09 17:45 ` Karicheri, Muralidharan
2009-12-09 18:21 ` Karicheri, Muralidharan
2009-12-09 20:33 ` Karicheri, Muralidharan
2009-12-10 19:06 ` Kevin Hilman
2009-12-10 20:02 ` Karicheri, Muralidharan
2009-12-11 18:34 ` Kevin Hilman [this message]
2009-12-11 20:48 ` Karicheri, Muralidharan
2009-12-10 19:02 ` Kevin Hilman
2009-12-10 19:58 ` Karicheri, Muralidharan
-- strict thread matches above, loose matches on Subject: below --
2009-12-03 20:22 Karicheri, Muralidharan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=871vj1iclh.fsf@deeprootsystems.com \
--to=khilman@deeprootsystems.com \
--cc=davinci-linux-open-source@linux.davincidsp.com \
--cc=linux-media@vger.kernel.org \
--cc=m-karicheri2@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox