From: Aneesh V <aneesh@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 05/10] armv7: integrate cache maintenance support
Date: Tue, 17 May 2011 18:58:57 +0530 [thread overview]
Message-ID: <4DD27819.7010600@ti.com> (raw)
In-Reply-To: <20110517122832.E928F1491B09@gemini.denx.de>
Hi Wolfgang,
On Tuesday 17 May 2011 05:58 PM, Wolfgang Denk wrote:
> Dear Aneesh V,
>
> In message<4DD264B7.9060304@ti.com> you wrote:
>>
>> In ARM literature this kind of situations are also referred to as "self-
>> modifying". Here is an excerpt from ARM manual gloassary:
>
> I see. Thanks.
>
>>> Well, all the data copy will also use cached writes, which are much
>>
>> You mean, you will do a range-flush on only the .text section's area?
>
> That should indeed be sufficient.
>
>>> faster. I think this will result in measurable time differences.
>>
>> Relocation itself was not taking a huge amount of time in my
>> measurement sometime back. It was about 16 ms for OMAP4.
>
> I was especially talking about the loading from external storage, not
> primarily relocation. This will even be mnore important if we had
> (much) bigger images - like when loading an OS kernel as second stage
> payload instead of U-Boot.
Are you talking about enabling D-cache in SPL? Technically, this should
be possible as soon as DRAM is initialized(because internal RAMs
typically do not have enough memory for page-tables(16KB) in addition
to the SPL itself). But you might want to consider these.
1. We need to setup the page tables, invalidate the cache, enable it
and before jumping to kernel flush and disable it again. Is that all
worth just for speeding up the loading part? I think one must consider
DMA for loading the image instead.
2. What happens if the payload is U-Boot? You still have the problem of
flushing. Besides after reaching U-Boot do we setup MMU again or
not? If we decide to retain the page-tables setup by SPL then U-Boot
and SPL needs to align on the location of page-tables. This is
difficult because U-Boot dynamically determines the memory for
page-tables where as SPL doesn't have such intelligence. If we decide
to do the MMU setup again, then it means setting up the page-tables
twice in the bootloaders!
best regards,
Aneesh
next prev parent reply other threads:[~2011-05-17 13:28 UTC|newest]
Thread overview: 105+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-08 13:07 [U-Boot] [PATCH v2 00/10] armv7: cache maintenance operations Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 01/10] arm: make default implementation of cache_flush() weakly linked Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 02/10] armv7: add miscellaneous utility macros Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 03/10] armv7: cache maintenance operations for armv7 Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 04/10] armv7: replace CONFIG_L2_OFF with CONFIG_SYS_NO_L2CACHE Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 05/10] armv7: integrate cache maintenance support Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 06/10] arm: minor fixes for cache and mmu handling Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 07/10] armv7: add PL310 support to u-boot Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 08/10] armv7: adapt omap4 to the new cache maintenance framework Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 09/10] armv7: adapt omap3 " Aneesh V
2011-03-08 13:07 ` [U-Boot] [PATCH v2 10/10] armv7: adapt s5pc1xx " Aneesh V
2011-04-27 1:05 ` [U-Boot] [PATCH v2 00/10] armv7: cache maintenance operations Simon Glass
2011-05-05 4:48 ` Simon Glass
2011-05-10 10:25 ` Aneesh V
2011-05-12 12:11 ` [U-Boot] [PATCH v3 " Aneesh V
2011-05-12 12:11 ` [U-Boot] [PATCH v3 01/10] arm: make default implementation of cache_flush() weakly linked Aneesh V
2011-05-12 12:11 ` [U-Boot] [PATCH v3 02/10] armv7: add miscellaneous utility macros Aneesh V
2011-05-15 18:44 ` Wolfgang Denk
2011-05-15 22:15 ` Simon Glass
2011-05-16 2:23 ` Eric Cooper
2011-05-16 14:50 ` Simon Glass
2011-05-16 15:52 ` Wolfgang Denk
2011-05-16 5:51 ` Wolfgang Denk
2011-05-17 3:47 ` Simon Glass
2011-05-17 5:27 ` Wolfgang Denk
2011-05-17 8:44 ` Aneesh V
2011-05-17 9:27 ` Wolfgang Denk
2011-05-31 7:54 ` V, Aneesh
2011-06-01 2:13 ` Simon Glass
2011-06-01 6:01 ` Aneesh V
2011-05-16 15:07 ` Aneesh V
2011-06-06 15:57 ` Aneesh V
2011-06-06 18:50 ` Wolfgang Denk
2011-06-07 9:01 ` Aneesh V
2011-06-07 10:39 ` Wolfgang Denk
2011-06-07 12:14 ` Aneesh V
2011-06-07 15:19 ` Simon Glass
2011-06-07 15:40 ` Wolfgang Denk
2011-06-08 11:53 ` Aneesh V
2011-06-08 21:41 ` Wolfgang Denk
2011-06-14 8:45 ` Aneesh V
2011-06-14 10:51 ` Wolfgang Denk
2011-06-14 11:39 ` Aneesh V
2011-06-14 13:53 ` Wolfgang Denk
2011-06-14 15:11 ` Simon Glass
2011-06-14 18:54 ` Wolfgang Denk
2011-06-15 15:19 ` Simon Glass
2011-06-15 8:48 ` Aneesh V
2011-06-15 9:20 ` Wolfgang Denk
2011-06-15 11:01 ` Aneesh V
2011-06-15 12:04 ` Wolfgang Denk
2011-06-15 12:42 ` Graeme Russ
2011-06-15 12:51 ` Wolfgang Denk
2011-06-15 13:03 ` Graeme Russ
2011-06-16 11:07 ` Graeme Russ
2011-06-16 11:46 ` Wolfgang Denk
2011-06-16 23:58 ` Graeme Russ
2011-06-16 5:39 ` Aneesh V
2011-06-16 6:19 ` Graeme Russ
2011-06-16 8:15 ` Wolfgang Denk
2011-06-16 11:10 ` Graeme Russ
2011-05-12 12:11 ` [U-Boot] [PATCH v3 03/10] armv7: cache maintenance operations for armv7 Aneesh V
2011-05-15 18:51 ` Wolfgang Denk
2011-05-17 9:17 ` Aneesh V
2011-05-17 9:31 ` Wolfgang Denk
2011-05-17 9:37 ` Aneesh V
2011-05-17 9:58 ` Aneesh V
2011-06-16 14:17 ` Simon Glass
2011-05-12 12:11 ` [U-Boot] [PATCH v3 04/10] armv7: replace CONFIG_L2_OFF with CONFIG_SYS_NO_L2CACHE Aneesh V
2011-05-15 18:53 ` Wolfgang Denk
2011-05-17 9:59 ` Aneesh V
2011-05-17 11:09 ` Wolfgang Denk
2011-06-06 11:39 ` Aneesh V
2011-06-15 10:13 ` Wolfgang Denk
2011-05-12 12:11 ` [U-Boot] [PATCH v3 05/10] armv7: integrate cache maintenance support Aneesh V
2011-05-15 18:55 ` Wolfgang Denk
2011-05-17 10:20 ` Aneesh V
2011-05-17 11:14 ` Wolfgang Denk
2011-05-17 12:06 ` Aneesh V
2011-05-17 12:28 ` Wolfgang Denk
2011-05-17 13:28 ` Aneesh V [this message]
2011-05-17 21:37 ` Wolfgang Denk
2011-05-12 12:11 ` [U-Boot] [PATCH v3 06/10] arm: minor fixes for cache and mmu handling Aneesh V
2011-05-12 12:11 ` [U-Boot] [PATCH v3 07/10] armv7: add PL310 support to u-boot Aneesh V
2011-05-12 12:11 ` [U-Boot] [PATCH v3 08/10] armv7: adapt omap4 to the new cache maintenance framework Aneesh V
2011-05-15 18:57 ` Wolfgang Denk
2011-05-12 12:11 ` [U-Boot] [PATCH v3 09/10] armv7: adapt omap3 " Aneesh V
2011-05-15 18:58 ` Wolfgang Denk
2011-05-12 12:11 ` [U-Boot] [PATCH v3 10/10] armv7: adapt s5pc1xx " Aneesh V
2011-05-15 18:59 ` Wolfgang Denk
2011-06-17 9:30 ` [U-Boot] [PATCH v4 0/9] armv7: cache maintenance operations Aneesh V
2011-06-22 17:41 ` Albert ARIBAUD
2011-06-23 5:57 ` V, Aneesh
2011-06-23 19:24 ` Paulraj, Sandeep
2011-06-28 1:44 ` Minkyu Kang
2011-06-28 5:41 ` Albert ARIBAUD
2011-06-17 9:30 ` [U-Boot] [PATCH v4 1/9] arm: make default implementation of cache_flush() weakly linked Aneesh V
2011-06-17 9:30 ` [U-Boot] [PATCH v4 2/9] armv7: cache maintenance operations for armv7 Aneesh V
2011-06-17 9:30 ` [U-Boot] [PATCH v4 3/9] armv7: rename cache related CONFIG flags Aneesh V
2011-06-17 9:30 ` [U-Boot] [PATCH v4 4/9] armv7: integrate cache maintenance support Aneesh V
2011-06-17 9:30 ` [U-Boot] [PATCH v4 5/9] arm: minor fixes for cache and mmu handling Aneesh V
2011-06-17 9:30 ` [U-Boot] [PATCH v4 6/9] armv7: add PL310 support to u-boot Aneesh V
2011-06-17 9:30 ` [U-Boot] [PATCH v4 7/9] armv7: adapt omap4 to the new cache maintenance framework Aneesh V
2011-06-17 9:30 ` [U-Boot] [PATCH v4 8/9] armv7: adapt omap3 " Aneesh V
2011-06-17 9:30 ` [U-Boot] [PATCH v4 9/9] armv7: adapt s5pc1xx " 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=4DD27819.7010600@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