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 20:48:38 +0530 [thread overview]
Message-ID: <4F15914E.4090707@ti.com> (raw)
In-Reply-To: <yw1xd3aixtzh.fsf@unicorn.mansr.com>
On Tuesday 17 January 2012 08:21 PM, M?ns Rullg?rd wrote:
> Aneesh V<aneesh@ti.com> writes:
>
>> Hi Joe,
>>
>> On Monday 09 January 2012 09:18 PM, Joe Woodward wrote:
>>
>>> 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...
>>> [...]
>>> 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.
>
> On OMAP3 ES2 and later, the L2EN bit in the auxiliary control register
> is banked between secure and non-secure modes, so there is no need for
> ROM calls to enable/disable the L2$ on these chips.
>
Yes, but IIRC, there was an erratum around it in some ARM revisions (I
think 3430 ES2 was affected) and the workaround was to keep both the
banked bits at the same value always. So, to keep things simple and
working for all revisions, I try to change both together. In the U-Boot
code where this is done I have added a comment on this.
prev parent reply other threads:[~2012-01-17 15:18 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
2012-01-17 14:51 ` Måns Rullgård
2012-01-17 15:18 ` Aneesh V [this message]
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=4F15914E.4090707@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox