From: Shinya Kuribayashi <shinya.kuribayashi.px@renesas.com>
To: Sascha Hauer <s.hauer@pengutronix.de>
Cc: barebox@lists.infradead.org
Subject: Re: [PATCH 10/14] arm: reimplement startup code in C
Date: Tue, 27 Apr 2010 10:45:37 +0900 [thread overview]
Message-ID: <4BD641C1.6010409@renesas.com> (raw)
In-Reply-To: <1272013443-29196-11-git-send-email-s.hauer@pengutronix.de>
Sashca,
On 4/23/2010 6:03 PM, Sascha Hauer wrote:
> Lets translate the startup code to a language we all understand better.
> Tested on pcm038 (arm v5) and pcm043 (arm v6).
>
> Signed-off-by: Sascha Hauer<s.hauer@pengutronix.de>
> ---
> arch/arm/cpu/Makefile | 6 +-
> arch/arm/cpu/start-arm.S | 248 ------------------------------------
> arch/arm/cpu/start.c | 107 ++++++++++++++++
> arch/arm/include/asm/barebox-arm.h | 3 +
> arch/arm/lib/barebox.lds.S | 2 +-
> 5 files changed, 112 insertions(+), 254 deletions(-)
> delete mode 100644 arch/arm/cpu/start-arm.S
> create mode 100644 arch/arm/cpu/start.c
Some random comments:
* Even though I'm an ARM newbie, but with some training I've found
that the existing startup code originating from U-Boot is
reasonably simple and easy to read.
Current code is not as bad as you ARM experts feel it is ;-)
* I also agree that C version tells us a lot nicer than aseemblers
about what's going on in the sequence, especially
board_init_lowlevel_return() part looks quite easy-to-follow.
* That said, I don't think implementing startup code using inline
assemblers _with_Extended_ASM_ is easy to maintain. Are you
really happy with such core parts implemented in 'C'?
This patch has proved that we could write even the startup seq-
ences with 'C' (with extended asm.), but that doesn't necessarily
means that's the way to go.
* I don't think that all startup sequences necessarily need to be
impelmented in 'C'.
Board_init_lowlevel() is worth trying 'C' as it does a bunch of
machine-specific register operations, which are easy-to-follow
if they're implemented in 'C'. Patch 12/14 and 14/14 look very
nice!
Board_init_lowlevel_return() is also worth trying as well.
However, having ASM and C code for the startup sequences might be
slightly a mess, hmm.
* Leaving good comments, for example describing C version of start-
up code somewhere in the tree, might suffice.
Note that I'm not objecting these changes. I'm all for your changes
in the project, especially on steering ARM area.
--
Shinya Kuribayashi
Renesas Electronics
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
next prev parent reply other threads:[~2010-04-27 1:45 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-23 9:03 some more patches for -next Sascha Hauer
2010-04-23 9:03 ` [PATCH 01/14] i.MX35 stack: Fix mc9sdz60 reset register offset Sascha Hauer
2010-04-23 9:03 ` [PATCH 02/14] ARM: use memalign in dma_alloc_coherent to assure alignment Sascha Hauer
2010-04-23 9:03 ` [PATCH 03/14] fsl_udc: make it work with MMU on Sascha Hauer
2010-04-23 9:03 ` [PATCH 04/14] Increase MAX_FILES to 128 Sascha Hauer
2010-04-23 9:03 ` [PATCH 05/14] fix _update scripts Sascha Hauer
2010-04-23 9:03 ` [PATCH 06/14] pcm043: Speed up NAND controller before copying barebox image Sascha Hauer
2010-04-23 9:03 ` [PATCH 07/14] add arm helper function to determine the program counter Sascha Hauer
2010-04-28 2:37 ` Jean-Christophe PLAGNIOL-VILLARD
2010-04-28 9:02 ` Sascha Hauer
2010-04-23 9:03 ` [PATCH 08/14] arm: remove unused variables from header file Sascha Hauer
2010-04-23 9:03 ` [PATCH 09/14] arm: move __mmu_cache_flush to bare_init section Sascha Hauer
2010-04-23 9:03 ` [PATCH 10/14] arm: reimplement startup code in C Sascha Hauer
2010-04-27 1:45 ` Shinya Kuribayashi [this message]
2010-04-28 2:32 ` Jean-Christophe PLAGNIOL-VILLARD
2010-04-28 10:04 ` Sascha Hauer
2010-04-23 9:04 ` [PATCH 11/14] i.MX: remove __REG from esd controller regs. use readl/writel instead Sascha Hauer
2010-04-23 9:04 ` [PATCH 12/14] pcm043: reimplement lowlevel code in C Sascha Hauer
2010-04-28 2:35 ` Jean-Christophe PLAGNIOL-VILLARD
2010-04-23 9:04 ` [PATCH 13/14] i.MX35: Fix ahbclock calculation Sascha Hauer
2010-04-23 9:04 ` [PATCH 14/14] pcm038: reimplement lowlevel code in C Sascha Hauer
2010-04-26 12:04 ` some more patches for -next Ivo Clarysse
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=4BD641C1.6010409@renesas.com \
--to=shinya.kuribayashi.px@renesas.com \
--cc=barebox@lists.infradead.org \
--cc=s.hauer@pengutronix.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.