All of lore.kernel.org
 help / color / mirror / Atom feed
From: Aneesh V <aneesh@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] SPL framework re-design
Date: Thu, 16 Jun 2011 19:08:33 +0530	[thread overview]
Message-ID: <4DFA0759.2060606@ti.com> (raw)
In-Reply-To: <20110616121540.196C519E5AC4@gemini.denx.de>

On Thursday 16 June 2011 05:45 PM, Wolfgang Denk wrote:
> Dear Aneesh V,
>
> In message<4DF9EE03.8010105@ti.com>  you wrote:
>>
>>> we are also duplicating the structure across different boot media. I
>>> think we should re-organize this as follows:
>>>
>>> 	spl/
>>> 	spl/common/
>>> 	spl/mmc/
>>> 	spl/nand/
>>> 	spl/onenand/
>>
>> Can you please extend this to show the SoC/board directories etc. I
>> guess they will go under spl/ and not under each media.
>
> Correct, i. e. please add for example:
>
> 	spl/board/freescale/mx31pdk/
> 	spl/board/freescale/mx31pdk/Makefile
> 	...

I thought we were going to have cpu directory SoC directory etc in this
directory structure.

>
>>> ...this changes to: "spl/Makefile, spl/common/Makefile and
>>> spl/<bootdevice>/Makefile build libraries with the generic object
>>> files at their respective level (assuming these exist).
>>
>> What's the distinction between spl/Makefile and spl/common/Makefile?
>> I guess we won't have any source files at spl/ level?
>
> I think we can implement the logic to decide which directories need to
> be entered and built into spl/Makefile, so we can keep this out of the
> top level Makefile.
>
> spl/common/Makefile is responsible for building the common code in the
> spl/common/ directory.
>
> Correct, I do not see need for any sources in spl/
>
>>> We should try to get rid of the need to create symbolic links. If we
>>> use the same source files as for the "normal", then we should also
>>> use the normal object files.
>>
>> You mean you will re-use *.o files with normal u-boot? If so, do you
>> want to create symbolic links to them in the SPL directories or use
>> them in-place?
>
> We should use them in-place. Using --gc-sections and
> -ffunction-sections we have enough granularity to select only what we
> really need.
>
>> Whether you reuse the source code or the object files we still need
>> directories for all the levels for the respective Makefiles, right?
>
> Can we not use the objects that get normally built, with the existing
> Makefiles?

But where do you add the reference to SoC level and CPU level object
files? Which library do you make them part of? I thought the board
level Makefile was meant only to build the board specific library.

For example, let's say we have board 'a' and 'b' of same SoC(soc).
Unless we have a SoC directory we may have to do something like this.

spl/board/<vendor>/a/Makefile:
OBJS := soc_1.o
OBJS += soc_2.o
OBJS += a.o

spl/board/<vendor>/b/Makefile:
OBJS := soc_1.o
OBJS += soc_2.o
OBJS += b.o

Please note that soc_1.o and soc_2.o are duplicated in the two
Makefiles. We are back to square one, right? Or did you have
something else in mind?

>
>> Also, at least some files will have to be built separately for SPL
>> because they have conditional compilation with CONFIG_PRELOADER kind of
>> flags.
>
> Please let's check where this is needed, and how we can handle this.
> I'd really like to get rid of this symlinking.

One case is start.S. We need a simplified start.S for SPL(no
relocation, no interrupt handling etc).

There are places where CONFIG_PRELOADER is used today. But maybe, these
could be avoided it we try.

best regards,
Aneesh

  reply	other threads:[~2011-06-16 13:38 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 [this message]
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
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=4DFA0759.2060606@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.