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 v4 0/2] Factorize ARM startup code as mush as possible.
Date: Thu, 27 Dec 2012 12:27:59 +0100	[thread overview]
Message-ID: <20121227122759.400af105@lilith> (raw)
In-Reply-To: <1354020206-24762-1-git-send-email-albert.u.boot@aribaud.net>

On Tue, 27 Nov 2012 13:43:24 +0100, Albert ARIBAUD
<albert.u.boot@aribaud.net> wrote:
> The goal of this series is to scrub the start.S files
> which have proliferated across arch/arm and eliminate
> code redundancy.
> 
> This series only factorizes the C runtime framework,
> that is, the assembly code responsible for setting up
> the C environments needed by board_init_*() and
> relocate_code().
> 
> Further factorization is possible: relocate_code() can
> be moved out and possibly rewritten in C now that it
> has plain C function semantics; exception handlers
> should also be pretty much cpu-independent.
> 
> Also, SPL currently makes board_init_f() perform all
> of the setting up, including BSS clearing and chain-
> loading. This could be streamlined by only putting
> basic inits in board_init_f(), letting crt0 do the
> BSS initialization and chain-loading U-Boot from
> inside board_init_r().
> 
> Eventually, start.S files should disappear or contain
> CPU-specific code only.
> 
> The new C runtime setup sequence has been validated step by
> step on targets versatileqemu using gcc version 4.2.2 from
> the ELDK4.2 toolchain, and wireless_space using gcc version
> 4.7.2 (Ubuntu/Linaro 4.7.2-1ubuntu1).
> 
> The whole changes have been build-tested across all ARM
> targets using MAKEALL -a arm.
> 
> Changes in v4:
> - fixed bhs into blo in BSS init loop
> - switched from explicit literals to '=target' notation
> - fixed location of GD in initial environment
> - stopped SPL boot sequence at calling board_init_f
> 
> Changes in v3:
> - various clarifications and typo fixes
> - fixed wrong LED calls conditional
> - fixed open comment eating some code
> - fixed code overrun in SPL case
> 
> Changes in v2:
> - moved description from cover letter to patch commit msg
> - added note about tests in the cover letter
> - fixed baords with CONFIG_SPL but not CONFIG_SPL_STACK
> - removed useless includes in arm926ejs and arm925t
> 
> Albert ARIBAUD (2):
>   arm: move C runtime setup code in crt0.S
>   arm: remove useless code in start.S files
> 
>  arch/arm/cpu/arm1136/start.S              |   71 +++---------
>  arch/arm/cpu/arm1176/start.S              |   62 ++---------
>  arch/arm/cpu/arm720t/start.S              |   53 ++-------
>  arch/arm/cpu/arm920t/start.S              |   61 ++--------
>  arch/arm/cpu/arm925t/start.S              |   65 ++---------
>  arch/arm/cpu/arm926ejs/start.S            |   86 ++------------
>  arch/arm/cpu/arm946es/start.S             |   56 ++--------
>  arch/arm/cpu/arm_intcm/start.S            |   63 ++---------
>  arch/arm/cpu/armv7/start.S                |   58 +++-------
>  arch/arm/cpu/ixp/start.S                  |   55 ++-------
>  arch/arm/cpu/pxa/start.S                  |   63 ++---------
>  arch/arm/cpu/s3c44b0/start.S              |   55 ++-------
>  arch/arm/cpu/sa1100/start.S               |   50 ++-------
>  arch/arm/lib/Makefile                     |    2 +
>  arch/arm/lib/board.c                      |   11 --
>  arch/arm/lib/crt0.S                       |  173 +++++++++++++++++++++++++++++
>  include/common.h                          |    2 +-
>  include/configs/socfpga_cyclone5.h        |    2 +-
>  lib/asm-offsets.c                         |   10 ++
>  nand_spl/board/freescale/mx31pdk/Makefile |    6 +-
>  nand_spl/board/karo/tx25/Makefile         |    6 +-
>  21 files changed, 322 insertions(+), 688 deletions(-)
>  create mode 100644 arch/arm/lib/crt0.S
> 
> -- 
> 1.7.10.4

Tom,

These have been tested on several boards. Can it go in? If it can,
then I would like to take it in u-boot-arm/master with your Acked-By.

Amicalement,
-- 
Albert.

  parent reply	other threads:[~2012-12-27 11:27 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-04  3:57 [U-Boot] [PATCH v1 0/1] Factorize ARM startup code as mush as possible Albert ARIBAUD
2012-11-04  3:57 ` [U-Boot] [PATCH v1] arm: move generic startup code in crt0.S Albert ARIBAUD
2012-11-04  7:29   ` Wolfgang Denk
2012-11-04  8:36     ` Albert ARIBAUD
2012-11-04 11:32 ` [U-Boot] [PATCH v2 0/2] Factorize ARM startup code as mush as possible Albert ARIBAUD
2012-11-04 11:32   ` [U-Boot] [PATCH v2 1/2] arm: move C runtime setup code in crt0.S Albert ARIBAUD
2012-11-04 11:32     ` [U-Boot] [PATCH v2 2/2] arm: remove useless code in start.S files Albert ARIBAUD
2012-11-04 11:34     ` [U-Boot] [PATCH v2 1/2] arm: move C runtime setup code in crt0.S Albert ARIBAUD
2012-11-04 15:06     ` Vikram Narayanan
2012-11-04 18:01       ` Albert ARIBAUD
2012-11-05  8:31     ` Andreas Bießmann
2012-11-10 16:48       ` Albert ARIBAUD
2012-11-10 16:53     ` Albert ARIBAUD
2012-11-04 11:43   ` [U-Boot] [PATCH v2 0/2] Factorize ARM startup code as mush as possible Albert ARIBAUD
2012-11-04 17:38     ` Tom Rini
2012-11-05  7:39       ` Sughosh Ganu
2012-11-08 14:20         ` Sughosh Ganu
2012-11-10 14:30           ` Albert ARIBAUD
2012-11-13  4:10             ` Sughosh Ganu
2012-11-13 19:55               ` Albert ARIBAUD
2012-12-09 20:31                 ` Sughosh Ganu
2012-11-10 17:00   ` [U-Boot] [PATCH v3 " Albert ARIBAUD
2012-11-10 17:00     ` [U-Boot] [PATCH v3 1/2] arm: move C runtime setup code in crt0.S Albert ARIBAUD
2012-11-10 17:00       ` [U-Boot] [PATCH v3 2/2] arm: remove useless code in start.S files Albert ARIBAUD
2012-11-15 19:35       ` [U-Boot] [PATCH v3 1/2] arm: move C runtime setup code in crt0.S Simon Glass
2012-11-15 22:41         ` Albert ARIBAUD
2012-11-10 17:28     ` [U-Boot] [PATCH v3 0/2] Factorize ARM startup code as mush as possible Albert ARIBAUD
2012-11-27 12:43     ` [U-Boot] [PATCH v4 " Albert ARIBAUD
2012-11-27 12:43       ` [U-Boot] [PATCH v4 1/2] arm: move C runtime setup code in crt0.S Albert ARIBAUD
2012-11-27 12:43         ` [U-Boot] [PATCH v4 2/2] arm: remove useless code in start.S files Albert ARIBAUD
2013-01-07 14:41           ` Tom Rini
2012-11-28 21:18         ` [U-Boot] [PATCH v4 1/2] arm: move C runtime setup code in crt0.S Simon Glass
2012-11-28 22:34           ` Albert ARIBAUD
2012-11-30 22:10             ` Simon Glass
2012-12-23 15:03               ` Albert ARIBAUD
2012-12-26 20:41                 ` Simon Glass
2013-01-05  1:00                   ` Simon Glass
2012-12-09 20:33         ` Sughosh Ganu
2013-01-07 14:40         ` Tom Rini
2013-01-08 19:26         ` Tom Rini
2013-01-08 19:50           ` Albert ARIBAUD
2013-01-08 20:18         ` [U-Boot] [PATCH v5 0/2] Factorize ARM startup code as much as possible Albert ARIBAUD
2013-01-08 20:18           ` [U-Boot] [PATCH v5 1/2] arm: move C runtime setup code in crt0.S Albert ARIBAUD
2013-01-08 20:18             ` [U-Boot] [PATCH v5 2/2] arm: remove useless code in start.S files Albert ARIBAUD
2013-01-08 21:16           ` [U-Boot] [PATCH v5 0/2] Factorize ARM startup code as much as possible Albert ARIBAUD
2012-12-27 11:27       ` Albert ARIBAUD [this message]
2013-01-08 17:20       ` [U-Boot] [PATCH v4 0/2] Factorize ARM startup code as mush " 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=20121227122759.400af105@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.