From: Albert ARIBAUD <albert.u.boot@aribaud.net>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC PATCH 6/7] omap: common spl support for OMAP3/4
Date: Sun, 03 Jul 2011 09:48:37 +0200 [thread overview]
Message-ID: <4E101ED5.4010708@aribaud.net> (raw)
In-Reply-To: <58A653AE-B886-457A-AEA4-4918D2EE951C@googlemail.com>
Le 03/07/2011 09:31, Andreas Bie?mann a ?crit :
> Dear Albert Aribaud,
>
> Am 03.07.2011 um 08:56 schrieb Albert ARIBAUD:
>
>> Hi Aneesh,
>>
>> Le 03/07/2011 06:47, Aneesh V a ?crit :
>>> Hi Albert,
>>>
>>> On Saturday 02 July 2011 01:21 AM, Albert ARIBAUD wrote:
>>>> Hi Aneesh,
>>>>
>
> <snip>
>
>>> I was thinking of doing that in start.S itself. I haven't looked at
>>> all the details though.
>>>
>>> BTW, please note that I am not trying to support disjoint BSS in
>>> regular u-boot. I think it becomes complex with relocation + it doesn't
>>> seem to be worth when all SDRAM is at our disposal.
>>>
>>> So:
>>> 1. #ifdef CONFIG_PRELOADER part in start.s will just pass __bss_start
>>> and __bss_end to the clear_bss function(assumes no relocation).
>>> 2. #else part of above will assume that bss follows text and data(or at
>>> least that __bss_start> _start), so add relocation offset to
>>> __bss_start and __bss_end, and pass them to the clear_bss()
>>>
>>> Does that sound ok?
>>
>> (note clear_bss is not a function in arch/arm/cpu/armv7/start.S, it is only a label)
>>
>> So, considering what is already in arch/arm/cpu/armv7/start.S, you would just add a conditional variant to the BSS clearing code for the preloader case?
>>
>> If so, and considering that you'll pass an offset of 0, why would you need that variant for? With offset=0, the code already does what you want, does it not?
>
> we are looking forward to have relocate_code(), clear_bss(), a.s.o. implemented in c in future (as I understood the discussion around christmas about relocation).
> Wouldn't it be nice to implement now a SPL version of clear_bss(int start, int size) in c and skip the relocate_code() stuff in start.S completely?
>
> As I see the normal way to boot is:
>
> -> some start vector
> -> lowlevel_init
> -> board_init_f
> -> relocate_code
> -> board_init_r
>
> for SPL we do not need the steps after board_init_f. board_init_f
> for SPL should implement the generic way to load data from predefined
> (compile time) source to predefined target address and branch it.
> Therefore a simple memset() in board_init_f could be sufficient to clear
> the bss.
Granted, clear_bss could become a function and should be optimized
according to the context; however, I don't like the idea of calling a C
library function at a point where we know the C environment for the
caller is by definition not really set up yet.
And as a general rule, I think we should not perform changes 'now for
the future' so yes, it would be nice to have a clear_bss() function, but
we don't need it right now in U-Boot working as it is now; I'd much
prefer the separate clear_bss C function to appear within the patch set
that will bring this future general move of relocation to C.
> regards
>
> Andreas Bie?mann
Amicalement,
--
Albert.
next prev parent reply other threads:[~2011-07-03 7:48 UTC|newest]
Thread overview: 172+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-16 8:08 [U-Boot] SPL framework re-design Aneesh V
2011-06-16 10:47 ` Wolfgang Denk
2011-06-16 11:50 ` Aneesh V
2011-06-16 12:15 ` Wolfgang Denk
2011-06-16 13:38 ` Aneesh V
2011-06-16 21:52 ` Wolfgang Denk
2011-06-16 12:55 ` Daniel Schwierzeck
2011-06-16 13:10 ` Andreas Bießmann
2011-06-26 23:17 ` Ilya Yanok
2011-06-27 4:29 ` Aneesh V
2011-06-27 8:24 ` Ilya Yanok
2011-06-27 9:08 ` Aneesh V
2011-06-27 8:42 ` Simon Schwarz
2011-06-27 9:36 ` Wolfgang Denk
2011-06-27 18:42 ` Scott Wood
2011-06-27 20:54 ` Wolfgang Denk
2011-06-27 9:27 ` Wolfgang Denk
2011-06-27 13:42 ` Daniel Schwierzeck
2011-06-27 20:48 ` Wolfgang Denk
2011-06-27 18:34 ` Scott Wood
2011-06-27 20:50 ` Wolfgang Denk
2011-06-27 20:55 ` Scott Wood
2011-06-27 21:10 ` Wolfgang Denk
2011-06-27 21:18 ` Scott Wood
2011-06-27 21:22 ` Wolfgang Denk
2011-06-28 6:54 ` Aneesh V
2011-06-28 16:18 ` Scott Wood
2011-06-29 7:27 ` Aneesh V
2011-06-16 13:57 ` Aneesh V
2011-06-16 14:27 ` Daniel Schwierzeck
2011-06-16 21:55 ` Wolfgang Denk
2011-06-16 21:47 ` Wolfgang Denk
2011-06-17 18:45 ` Daniel Schwierzeck
2011-06-17 18:51 ` Scott Wood
2011-06-29 13:09 ` [U-Boot] [RFC PATCH 0/7] spl framework prototype Aneesh V
2011-07-01 5:20 ` Aneesh V
2011-07-05 16:26 ` [U-Boot] [RFC PATCH 0/4] " Daniel Schwierzeck
2011-07-05 16:26 ` [U-Boot] [RFC PATCH 1/4] Adapt config.mk for usage in spl/Makefile Daniel Schwierzeck
2011-07-05 17:52 ` Mike Frysinger
2011-07-06 8:07 ` Aneesh V
2011-07-08 9:08 ` Wolfgang Denk
2011-07-08 10:20 ` Aneesh V
2011-07-08 11:19 ` Wolfgang Denk
2011-07-08 11:40 ` Aneesh V
2011-07-08 12:37 ` Wolfgang Denk
2011-07-08 11:34 ` Daniel Schwierzeck
2011-07-08 12:25 ` Wolfgang Denk
2011-07-08 13:33 ` Aneesh V
2011-07-08 13:44 ` Wolfgang Denk
2011-07-08 13:52 ` Aneesh V
2011-07-05 16:26 ` [U-Boot] [RFC PATCH 2/4] Use ALL-y style instead of ifeq blocks for better readability and upgradeability Daniel Schwierzeck
2011-07-05 17:53 ` Mike Frysinger
2011-07-08 9:12 ` Wolfgang Denk
2011-07-08 10:28 ` Aneesh V
2011-07-08 11:20 ` Wolfgang Denk
2011-07-05 16:26 ` [U-Boot] [RFC PATCH 3/4] Add new folder and build system for SPL Daniel Schwierzeck
2011-07-08 9:17 ` Wolfgang Denk
2011-07-08 11:32 ` Aneesh V
2011-07-08 12:32 ` Wolfgang Denk
2011-07-08 12:51 ` Aneesh V
2011-07-08 13:04 ` Wolfgang Denk
2011-07-08 13:28 ` Aneesh V
2011-07-08 13:41 ` Wolfgang Denk
2011-07-08 13:50 ` Aneesh V
2011-07-08 11:57 ` Daniel Schwierzeck
2011-07-05 16:26 ` [U-Boot] [RFC PATCH 4/4] Hook spl directory into main Makefile Daniel Schwierzeck
2011-07-08 9:18 ` Wolfgang Denk
2011-07-08 4:40 ` [U-Boot] [RFC PATCH 0/4] spl framework prototype Aneesh V
2011-06-29 13:09 ` [U-Boot] [RFC PATCH 1/7] Adapt config.mk for usage in spl/Makefile Aneesh V
2011-06-29 18:52 ` Mike Frysinger
2011-06-30 5:12 ` Aneesh V
2011-06-30 11:09 ` Daniel Schwierzeck
2011-06-29 13:09 ` [U-Boot] [RFC PATCH 2/7] Use ALL-y style instead of ifeq blocks for better readability and upgradeability Aneesh V
2011-06-29 18:54 ` Mike Frysinger
2011-06-30 5:14 ` Aneesh V
2011-06-29 13:09 ` [U-Boot] [RFC PATCH 3/7] Add new folder and build system for SPL Aneesh V
2011-06-29 13:09 ` [U-Boot] [RFC PATCH 4/7] Hook spl directory into main Makefile Aneesh V
2011-06-29 13:09 ` [U-Boot] [RFC PATCH 5/7] armv7: adapt Makefile for spl building Aneesh V
2011-06-29 13:09 ` [U-Boot] [RFC PATCH 6/7] omap: common spl support for OMAP3/4 Aneesh V
2011-06-30 6:01 ` Heiko Schocher
2011-06-30 6:12 ` Aneesh V
2011-06-30 7:08 ` Andreas Bießmann
2011-07-01 9:27 ` Aneesh V
2011-07-01 9:55 ` Andreas Bießmann
2011-07-01 11:48 ` Aneesh V
2011-07-01 19:51 ` Albert ARIBAUD
2011-07-03 4:47 ` Aneesh V
2011-07-03 6:56 ` Albert ARIBAUD
2011-07-03 7:31 ` Andreas Bießmann
2011-07-03 7:48 ` Albert ARIBAUD [this message]
2011-07-03 8:39 ` Aneesh V
2011-06-30 7:53 ` Heiko Schocher
2011-06-30 8:21 ` Simon Schwarz
2011-06-30 10:05 ` Aneesh V
2011-06-30 11:09 ` Albert ARIBAUD
2011-06-30 11:18 ` Aneesh V
2011-06-29 13:09 ` [U-Boot] [RFC PATCH 7/7] omap4: adapt Makefile for spl building Aneesh V
2011-06-17 16:48 ` [U-Boot] SPL framework re-design Aneesh V
2011-06-17 22:28 ` Scott Wood
2011-06-19 10:22 ` V, Aneesh
2011-06-20 16:19 ` Scott Wood
2011-06-21 3:22 ` Aneesh V
2011-06-21 10:59 ` Aneesh V
2011-06-25 8:06 ` Aneesh V
2011-06-25 12:10 ` Wolfgang Denk
2011-06-25 16:11 ` Daniel Schwierzeck
2011-06-27 4:19 ` Aneesh V
2011-06-27 9:27 ` Wolfgang Denk
2011-06-27 14:56 ` Aneesh V
2011-06-27 20:49 ` Wolfgang Denk
2011-06-16 16:45 ` Scott Wood
2011-06-16 22:09 ` Wolfgang Denk
2011-06-16 22:22 ` Scott Wood
2011-06-17 7:02 ` Aneesh V
2011-06-17 7:00 ` Aneesh V
2011-06-28 0:55 ` Graeme Russ
2011-06-28 4:10 ` Wolfgang Denk
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 0/9] Prototype for generic SPL framework Daniel Schwierzeck
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 1/9] Use ALL-y style instead of ifeq blocks for better readability Daniel Schwierzeck
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 2/9] spl: add initial support for a generic SPL framework Daniel Schwierzeck
2011-07-15 16:22 ` [U-Boot] [RFC PATCH v2 " Daniel Schwierzeck
2011-07-18 16:06 ` Wolfgang Denk
2011-07-18 16:22 ` Daniel Schwierzeck
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 3/9] Extend build-system for " Daniel Schwierzeck
2011-07-14 5:37 ` Aneesh V
2011-07-14 9:45 ` Wolfgang Denk
2011-07-14 10:02 ` Aneesh V
2011-07-15 16:24 ` [U-Boot] [RFC PATCH v2 " Daniel Schwierzeck
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 4/9] Hook SPL build-system into toplevel Makefile Daniel Schwierzeck
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 5/9] arm: adjust PLATFORM_LIBS for SPL Daniel Schwierzeck
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 6/9] scaled down version of generic libraries " Daniel Schwierzeck
2011-07-15 12:31 ` Simon Schwarz
2011-07-15 12:41 ` Aneesh V
2011-07-15 13:10 ` Simon Schwarz
2011-07-15 13:35 ` Aneesh V
2011-07-15 14:43 ` Daniel Schwierzeck
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 7/9] replace CONFIG_PRELOADER with CONFIG_SPL_BUILD Daniel Schwierzeck
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 8/9] spl: Add support for common libraries and drivers Daniel Schwierzeck
2011-07-13 15:11 ` [U-Boot] [RFC PATCH v1 9/9] spl: add support for omap-common libraries Daniel Schwierzeck
2011-07-13 15:17 ` [U-Boot] [RFC PATCH v1 0/9] Prototype for generic SPL framework Albert ARIBAUD
2011-07-14 20:06 ` Wolfgang Denk
2011-07-14 20:25 ` Wolfgang Denk
2011-07-15 7:57 ` Aneesh V
2011-07-15 8:35 ` Wolfgang Denk
2011-07-15 15:02 ` Daniel Schwierzeck
2011-07-18 16:09 ` [U-Boot] [PATCH v3 0/9] Add initial support for a " Daniel Schwierzeck
2011-07-18 16:09 ` [U-Boot] [PATCH v3 1/9] Use ALL-y style instead of ifeq blocks for better readability Daniel Schwierzeck
2011-07-19 3:51 ` Vipin Kumar
2011-07-26 12:41 ` Wolfgang Denk
2011-07-18 16:09 ` [U-Boot] [PATCH v3 2/9] spl: add initial support for a generic SPL framework Daniel Schwierzeck
2011-07-18 17:48 ` [U-Boot] [PATCH v4 " Daniel Schwierzeck
2011-07-26 12:42 ` Wolfgang Denk
2011-07-18 16:09 ` [U-Boot] [PATCH v3 3/9] Extend build-system for " Daniel Schwierzeck
2011-07-26 12:42 ` Wolfgang Denk
2011-07-18 16:09 ` [U-Boot] [PATCH v3 4/9] Hook SPL build-system into toplevel Makefile Daniel Schwierzeck
2011-07-26 12:43 ` Wolfgang Denk
2011-07-18 16:09 ` [U-Boot] [PATCH v3 5/9] arm: adjust PLATFORM_LIBS for SPL Daniel Schwierzeck
2011-07-19 9:21 ` Albert ARIBAUD
2011-07-19 10:38 ` Aneesh V
2011-07-19 11:03 ` Albert ARIBAUD
2011-07-19 15:51 ` [U-Boot] [PATCH v4 " Daniel Schwierzeck
2011-07-20 7:59 ` Aneesh V
2011-07-26 12:44 ` Wolfgang Denk
2011-07-18 16:09 ` [U-Boot] [PATCH v3 6/9] scaled down version of generic libraries " Daniel Schwierzeck
2011-07-26 12:44 ` Wolfgang Denk
2011-07-18 16:09 ` [U-Boot] [PATCH v3 7/9] replace CONFIG_PRELOADER with CONFIG_SPL_BUILD Daniel Schwierzeck
2011-07-26 12:45 ` Wolfgang Denk
2011-07-18 16:09 ` [U-Boot] [PATCH v3 8/9] spl: Add support for common libraries and drivers Daniel Schwierzeck
2011-07-26 12:45 ` Wolfgang Denk
2011-07-18 16:09 ` [U-Boot] [PATCH v3 9/9] spl: add support for omap-common libraries Daniel Schwierzeck
2011-07-26 12:45 ` Wolfgang Denk
2011-07-20 21:12 ` [U-Boot] [PATCH v3 0/9] Add initial support for a generic SPL framework Paulraj, Sandeep
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=4E101ED5.4010708@aribaud.net \
--to=albert.u.boot@aribaud.net \
--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