From: Aneesh V <aneesh@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] OMAP3 performance regression in 2011.12
Date: Tue, 17 Jan 2012 18:49:09 +0530 [thread overview]
Message-ID: <4F15754D.1070203@ti.com> (raw)
In-Reply-To: <WC20120109154824.140197@terrafix.co.uk>
Hi Joe,
On Monday 09 January 2012 09:18 PM, Joe Woodward wrote:
<snip>
>
> (apologies for previous top posting, wasn't paying attention to what I was doing!)
>
> I'm fairly certain...
>
> If I take the 2011.12 uBoot release the kernel takes about twice the time to boot (compared to 2011.09), and the device is noticably slower.
>
> Then if I comment out the v7_out_cache_disable() line in cpu.c and rebuild uBoot then everything speeds up again.
>
> I thought the kernel would turn on the cache again too...
>
> Is there any easy way from userspace to determine if the cache is on?
It won't be easy I believe, unless you have a debugger that allows you
to see CP15 registers.
>
> I did a bit of Googling and found:
> http://www.spinics.net/lists/arm-kernel/msg50064.html
> http://www.spinics.net/lists/arm-kernel/msg50083.html
>
> It may be that the kernel is re-enabling the L1 cache, but expecting L2 to be on?
Ideally kernel should be enabling L2 too. But looks like L2 was enabled
by ROM code itself in OMAP3, but D-cache disabled globally. So, it gets
enabled as soon as the D-cache is enabled globally.
L2$ in OMAP3 is a bit tricky. The cache is known to ARM but
enabling/disabling it and affecting secure entries needs ROM
assistance. So, while ARMv7 generic code can flush L2, we need OMAP
specific code to enable/disable it.
So, before my patch and before cache-support came to U-boot L2$ always
remained enabled. Since de-compressor's flush indeed flushed L2$ we
didn't get into any coherency problems.
Let the discussion in l-o conclude. I think fixing it in kernel is the
right thing to do. But if that's not possible, we can have a patch in
U-boot to work around it.
br,
Aneesh
next prev parent reply other threads:[~2012-01-17 13:19 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-09 10:27 [U-Boot] OMAP3 performance regression in 2011.12 Joe Woodward
2012-01-09 15:11 ` Tom Rini
2012-01-09 15:20 ` Joe Woodward
2012-01-09 15:48 ` Joe Woodward
[not found] ` <4F1099D1.6040101@balister.org>
2012-01-16 9:03 ` Joe Woodward
2012-01-16 16:34 ` Philip Balister
2012-01-16 16:44 ` Andreas Müller
2012-01-17 13:19 ` Aneesh V [this message]
2012-01-17 14:51 ` Måns Rullgård
2012-01-17 15:18 ` Aneesh V
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=4F15754D.1070203@ti.com \
--to=aneesh@ti.com \
--cc=u-boot@lists.denx.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.