From: Jon Hunter <jon-hunter@ti.com>
To: Will Deacon <will.deacon@arm.com>
Cc: Kevin Hilman <khilman@ti.com>, Paul Walmsley <paul@pwsan.com>,
Benoit Cousson <b-cousson@ti.com>,
Ming Lei <ming.lei@canonical.com>,
linux-omap <linux-omap@vger.kernel.org>,
linux-arm <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH V2 01/10] ARM: PMU: Add runtime PM Support
Date: Tue, 12 Jun 2012 16:17:16 -0500 [thread overview]
Message-ID: <4FD7B1DC.30108@ti.com> (raw)
In-Reply-To: <20120612092842.GA2991@mudshark.cambridge.arm.com>
Hi Will,
On 06/12/2012 04:28 AM, Will Deacon wrote:
> On Mon, Jun 11, 2012 at 08:01:23PM +0100, Jon Hunter wrote:
>> Hi Will,
>
> Hello,
>
>> On 06/11/2012 12:39 PM, Will Deacon wrote:
>>> This looks better to me, so I took it for a spin on my 4460 (thanks Nicolas!)
>>> and noticed that only the cycle counter seems to tick -- the event counters
>>> always return 0 deltas (that is, they don't increment). Booting the same SD
>>> card on a 4430 (same MLO, u-boot, kernel and filesystem) I see that the
>>> event counters function correctly there.
>>
>> Thanks for the feedback. Being somewhat new to PMU, I was mainly using
>> PERF to test and verify that with "perf top" I was seeing interrupts.
>> How do I check what the event counters are returning? Any perf tests I
>> could use?
>
> You can continue to use perf top, just specify an event other than cycles:
>
> # perf top -e instructions
>
> for example. You can also use perf stat, but that probably won't be
> triggering irqs.
>
>> By the way, as a quick test you could modify the code in omap_init_pmu()
>> to call omap4430_init_pmu() for all omap4 devices as follows ...
>>
>> if (cpu_is_omap44xx())
>> return omap4430_init_pmu();
>>
>> I was hoping for 4460/70 we would not need to keep the debugss and other
>> domains on and hence, I called the above function omap4430_init_pmu().
>> However this function works for all omap4 devices, it just turns on more
>> power domains.
>
> Well, I tried that and the results are pretty whacky: the event counters do
> indeed tick but interrupts only fire if I pin the perf task to CPU1! What's
> more, the interrupts do fire on both cores when they're working...
I tried this, and I see that interrupts occur on both, however, it seems
that the majority occur on one CPU and only a few on the other. So it
does appear that one CPU is getting a lot more interrupts.
> Without the above change, I can generate cycle counter interrupts regardless
> of which CPU I run execute perf.
Yes, I see this to. From more testing, I see that as soon as I turn off
the debugss clock domain "perf top -e instructions" stops working. So I
assume that the event counters are returning 0 in this case.
>From a PMU programming standpoint, if we just use "perf top" are the
event counters not used/programmed?
And when we use "perf top -e instructions" is it the "software
increment" event that the event counter(s) are monitoring? I am just
trying to understand how the counters are being programmed and then I
can ask the design folks an intelligent question :-)
By the way, I don't suppose there is any debugfs entry to dump the PMU
registers?
>>> It also seems that we can remove the dependency on CONFIG_OMAP3_EMU with these
>>> patches but I don't have any OMAP3 hardware to check if we get any regressions
>>> on older platforms. Do your patches only deal with OMAP4?
>>
>> It *should* work for all omap2+. So far I have tested an omap3 beagle
>> but I have not tested an omap2 device. Again the extent of my testing
>> was to run "perf top" and verify interrupts we being generated. I
>> realise that this may not be sufficient and so if you have a more
>> exhaustive test you recommend let me know.
>
> Well, try the above as well as what you're currently doing and that should
> test the basics. If that works, I'll happily drop the Kconfig dependency on
> OMAP3_EMU (which has been a regular source of confusion).
I still think that there is something I need to understand better here.
Cheers
Jon
next prev parent reply other threads:[~2012-06-12 21:17 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-07 21:22 [PATCH V2 00/10] ARM: OMAP4: Add PMU Support Jon Hunter
2012-06-07 21:22 ` [PATCH V2 01/10] ARM: PMU: Add runtime PM Support Jon Hunter
2012-06-08 9:47 ` Will Deacon
2012-06-08 14:17 ` Jon Hunter
2012-06-08 15:24 ` Jon Hunter
2012-06-11 17:39 ` Will Deacon
2012-06-11 19:01 ` Jon Hunter
2012-06-12 9:28 ` Will Deacon
2012-06-12 21:17 ` Jon Hunter [this message]
2012-06-12 21:31 ` Will Deacon
2012-06-12 22:41 ` Jon Hunter
2012-07-02 9:55 ` Will Deacon
2012-07-02 16:50 ` Jon Hunter
2012-07-02 22:01 ` Will Deacon
2012-07-06 0:40 ` Jon Hunter
2012-07-26 0:41 ` Jon Hunter
2012-07-26 15:05 ` Will Deacon
2012-07-26 15:16 ` Jon Hunter
2012-07-31 15:14 ` Will Deacon
2012-07-31 23:07 ` Jon Hunter
2012-08-01 20:47 ` Will Deacon
2012-08-01 22:34 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 02/10] ARM: OMAP2+: PMU: Convert OMAP2/3 devices to use HWMOD Jon Hunter
2012-06-07 21:22 ` [PATCH V2 03/10] ARM: OMAP4: Re-map the CTIs IRQs from MPU to DEBUGSS Jon Hunter
2012-06-13 6:07 ` Pandita, Vikram
2012-06-13 6:13 ` Pandita, Vikram
2012-06-13 6:19 ` Shilimkar, Santosh
2012-06-07 21:22 ` [PATCH V2 04/10] ARM: OMAP4430: Create PMU device via HWMOD Jon Hunter
2012-06-07 21:22 ` [PATCH V2 05/10] ARM: OMAP2+: PMU: Add runtime PM support Jon Hunter
2012-06-07 21:22 ` [PATCH V2 06/10] ARM: OMAP4: Route PMU IRQs to CTI IRQs Jon Hunter
2012-06-07 21:22 ` [PATCH V2 07/10] ARM: OMAP4: CLKDM: Update supported transition modes Jon Hunter
2012-07-04 15:38 ` Paul Walmsley
2012-07-05 17:14 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 08/10] ARM: OMAP4: Prevent EMU power domain transitioning to OFF when in-use Jon Hunter
2012-07-12 21:17 ` Paul Walmsley
2012-07-13 13:54 ` Jon Hunter
2012-07-13 14:00 ` Will Deacon
2012-07-13 14:07 ` Jon Hunter
2012-07-20 22:24 ` Jon Hunter
2012-07-13 21:00 ` Paul Walmsley
2012-07-16 18:27 ` Jon Hunter
2012-07-16 18:38 ` Paul Walmsley
2012-07-16 19:38 ` Jon Hunter
2012-07-20 22:24 ` Jon Hunter
2012-07-30 23:26 ` Jon Hunter
2012-07-31 4:36 ` Jon Hunter
2012-07-31 18:16 ` Jon Hunter
2012-08-01 0:20 ` Jon Hunter
2012-08-01 15:08 ` Paul Walmsley
2012-08-01 18:17 ` Jon Hunter
2012-08-01 15:36 ` Paul Walmsley
2012-08-01 19:41 ` Jon Hunter
2012-08-02 7:34 ` Shilimkar, Santosh
2012-10-08 22:24 ` Jon Hunter
2012-10-09 4:41 ` Paul Walmsley
2012-07-31 20:56 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 09/10] ARM: OMAP4: Enable PMU for OMAP4460/70 Jon Hunter
2012-06-07 21:22 ` [PATCH V2 10/10] ARM: OMAP2+: PMU: Add QoS constraint Jon Hunter
2012-06-07 23:36 ` [PATCH V2 00/10] ARM: OMAP4: Add PMU Support Jon Hunter
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=4FD7B1DC.30108@ti.com \
--to=jon-hunter@ti.com \
--cc=b-cousson@ti.com \
--cc=khilman@ti.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=ming.lei@canonical.com \
--cc=paul@pwsan.com \
--cc=will.deacon@arm.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;
as well as URLs for NNTP newsgroup(s).