All of lore.kernel.org
 help / color / mirror / Atom feed
From: Albert ARIBAUD <albert.u.boot@aribaud.net>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] ARM: Fix __bss_start and __bss_end in linker scripts
Date: Mon, 8 Apr 2013 21:03:05 +0200	[thread overview]
Message-ID: <20130408210305.4f1cc319@lilith> (raw)
In-Reply-To: <20130405202330.GL32357@bill-the-cat>

Hi Tom,

On Fri, 5 Apr 2013 16:23:30 -0400, Tom Rini <trini@ti.com> wrote:

> On Fri, Apr 05, 2013 at 10:04:02PM +0200, Albert ARIBAUD wrote:
> 
> > The two general ideas of my proposal are:
> > 
> > 1) to separate testing the image (text,data,rodata,lists) size on the
> >    one hand and the image BSS size on the other hand, and
> > 
> > 2) to consider that if a target defines an image max size and a BSS
> > max size, then the image max size does not include the BSS size ; and
> > if it defined an image max size but no BSS max size, then the image max
> > size includes the BSS.
> > 
> > The first idea allows boards with disjoint image and BSS to still check
> > eahc part's size, a thing not feasible with the current code; the
> > second idea allows fewer changes, but if one wants CONFIG_SPL_MAX_SIZE
> > to have a strict meaning, we can drop idea #2 and still keep idea #1.
> 
> Make it so, thanks!

Just a quick heads up: in the little time I could spare this week-end,
I analyzed the SPL image vs BSS max sizes issue, and the following
appeared:


1. File arch/arm/cpu/u-boot.lds has an ASSERT() regarding SPL even
   though it is never used for building SPL (tested by replacing the
   ASSERT() condition by 0 and building all of ARM).

2. Several boards use arch/arm/cpu/u-boot-spl.lds, which has an ASSERT()
   wrongly comparing image+BSS size to image-only CONFIG_SPL_MAX_SIZE.
   Fixing the linker file will fix all tegra boards as well as the
   exynos origen and smdkv310.

   Note: the tegra-common.h config file states a non-existent .lds file
   for SPL.

3. Boards cam_enc_4xx, da850evm, smdk5250 and snow all define maximum
   SPL size to include image and BSS. These must be split arbitrarily;
   I have chosen values that fit sizes from current build results.

4. Boards MPC8313ERDB_[NAND_]{33,66} hardcode their image+BSS limit. I
   have left this untouched.

5. Board a3m071 and its linker file define CONFIG_SYS_SPL_MAX_LEN
   instead of CONFIG_SPL_MAX_SIZE, but the semantics are correct. Left
   unchanged.

6. Generic p1_p2_rdb_pc board header defines CONFIG_SPL_MAX_SIZE but
   linker files do not seem to test it anyway. Left unchanged.

7. Tegra configs specify a non-existent lds file name. Build defaults
   to generic ARM lds file. Left unchanged.

Patch series to follow in a couple of hours.

Amicalement,
-- 
Albert.

  reply	other threads:[~2013-04-08 19:03 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-04 22:13 [U-Boot] [PATCH] ARM: Fix __bss_start and __bss_end in linker scripts Albert ARIBAUD
2013-04-04 23:05 ` Benoît Thébaudeau
2013-04-04 23:13   ` Benoît Thébaudeau
2013-04-04 23:54     ` Albert ARIBAUD
2013-04-05  3:44       ` Benoît Thébaudeau
2013-04-05  6:00         ` Albert ARIBAUD
2013-04-05 13:53           ` Tom Rini
2013-04-05 15:59             ` Stephen Warren
2013-04-11 17:52               ` Tom Warren
2013-04-11 17:59                 ` Albert ARIBAUD
2013-04-11 18:13                   ` Tom Warren
2013-04-05 13:56           ` Benoît Thébaudeau
2013-04-05 16:00             ` Tom Rini
2013-04-05 17:32               ` Benoît Thébaudeau
2013-04-05 17:55                 ` Tom Rini
2013-04-05 19:17                   ` Albert ARIBAUD
2013-04-05 19:28                     ` Albert ARIBAUD
2013-04-05 19:44                     ` Tom Rini
2013-04-05 20:04                       ` Albert ARIBAUD
2013-04-05 20:23                         ` Tom Rini
2013-04-08 19:03                           ` Albert ARIBAUD [this message]
2013-04-08 19:56                             ` Tom Rini
2013-04-08 20:05                               ` Albert ARIBAUD
2013-04-04 23:12 ` Albert ARIBAUD
2013-04-11 15:30 ` Albert ARIBAUD
2013-04-11 15:43 ` [U-Boot] [PATCH V2] " Albert ARIBAUD
2013-04-12 16:34   ` Albert ARIBAUD
2013-04-13 21:16   ` Albert ARIBAUD

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=20130408210305.4f1cc319@lilith \
    --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 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.