From: Stefan Roese <sr@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] U-Boot-NG ?
Date: Wed, 4 Jul 2007 12:06:18 +0200 [thread overview]
Message-ID: <200707041206.18929.sr@denx.de> (raw)
In-Reply-To: <20070704093242.GI3361@leda.ptxnet.pengutronix.de>
Hi Sascha,
On Wednesday 04 July 2007, Sascha Hauer wrote:
> > Yes, we do. This is one of the things I definitely want to keep as it
> > saved me lots of hours before. I won't give this up lightly.
>
> I don't understand what's so damn complicated about setting up SDRAM.
> This is one of the most basic things during lowlevel development.
You seem to never have dealt with a complex DDR2 setup with DIMM modules (and
optionally with ECC support). Please take a look at
cpu/ppc4xx/44x_spd_ddr2.c). It is pretty hard to come up with a common (cpu
platform) code that can be used by several boards supporting a variety of
DIMM modules. Here some debug printf's come in very handy.
> Usually this part is about 20 lines in my bdi config. Transfering this
> into some lines Assembler
I thought those days were over. I will never ever go back to having to setup a
SDRAM controller in assembler.
> or C code is a piece of cake.
Ah, ok. At least C.
> If you have to
> read some i2c data to get initialization settings, you have to do some
> bits more and I understand that one wants to have some putc/puthex to
> check if sane values are read. But again, this is lowlevel work and once
> it's running can forget about this.
No, you can't. Since the user might replace another DIMM module. Or even the
board manufacturer.
> Relocation is tricky, yes. But this is well reviewed code common for
> each SoC, or maybe (with some common code merge) even common for PPC.
> You won't have problems in this area on a production board.
>
> All this has _nothing_ to do with production boards. Here the SDRAM
> initialization and relocation just work. If not, you're doomed anyway.
> After relocation everyone can begin to setup things as he likes. I
> first print a hello world on the console, others might look in the
> device tree first to get console information.
>
> At the moment (PPC-)U-Boot does 90% of the whole initialization while
> running from Flash. All these serial read functions for the environment
> are just a pain. Do you really want to do the same thing for the device
> tree? Setting up things in SRAM and then copy them to SDRAM, possibly
> with relocation fixups is a pain. Setting up a preliminary environment
> in flash and relocate this complex thing afterwards with all this
> global_data handling is what I would call complicated and error prone.
>
> Doing this is not a design criteria, it is one main design flaw in
> U-Boot. If you insist on doing it, we don't need to talk about a
> redesign, just leave everything like it is.
>
> Note that in my tree there is one single entrypoint for all
> architectures, and the only thing needed to enter it is working RAM.
That's good.
> This is straight forward: Everyone should be able to provide working
> RAM. If not, again you're doomed.
> If you need some debugging output to get to that point, well that's
> fine, but these are putc/puthex and _not_ printf. They are not compiled
> in in production code and therefore do not need quiet console checking.
On the setup mentioned above, the printf's (or at least some serial output) is
really a great benefit. It would be a pity to loose this in this new U-Boot
version.
> Don't make things more complicated as they are. The earlier you enter a
> common entry point in U-Boot the more you can actually trust the code,
> since from there on it's common for _all_ architectures and the code
> will be best reviewed.
ACK.
Best regards,
Stefan
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de
=====================================================================
next prev parent reply other threads:[~2007-07-04 10:06 UTC|newest]
Thread overview: 110+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-30 2:08 [U-Boot-Users] U-Boot-NG ? Wolfgang Denk
2007-06-30 9:40 ` Robert Schwebel
2007-06-30 22:42 ` Carsten Schlote
2007-07-01 15:39 ` Wolfgang Denk
2007-07-02 9:58 ` Carsten Schlote
2007-07-01 15:17 ` Wolfgang Denk
2007-07-02 11:47 ` Sascha Hauer
2007-07-02 13:34 ` Carsten Schlote
2007-07-02 16:47 ` Sascha Hauer
2007-07-02 17:22 ` Jerry Van Baren
2007-07-02 18:42 ` Sascha Hauer
2007-07-02 23:39 ` Wolfgang Denk
2007-07-03 0:09 ` Sascha Hauer
2007-07-03 1:46 ` Grant Likely
2007-07-03 9:44 ` Sascha Hauer
2007-07-03 15:36 ` Grant Likely
2007-07-03 20:40 ` Wolfgang Denk
2007-07-04 8:35 ` Robert Schwebel
2007-07-04 13:47 ` Wolfgang Denk
2007-07-04 15:25 ` Grant Likely
2007-07-03 22:58 ` Wolfgang Denk
2007-07-03 7:22 ` Wolfgang Denk
2007-07-03 9:02 ` Sascha Hauer
2007-07-06 11:53 ` [U-Boot-Users] 回复: " Songmao Tian
2007-07-02 18:25 ` Håvard Skinnemoen
2007-07-02 18:58 ` Sascha Hauer
2007-07-02 19:53 ` Håvard Skinnemoen
2007-07-02 19:02 ` Carsten Schlote
2007-07-02 19:26 ` Sascha Hauer
2007-07-02 20:37 ` Carsten Schlote
2007-07-02 21:56 ` Sascha Hauer
2007-07-02 19:54 ` Carsten Schlote
2007-07-03 11:02 ` Sascha Hauer
2007-07-03 15:35 ` Carsten Schlote
2007-07-03 16:52 ` Grant Likely
2007-07-03 17:18 ` Ulf Samuelsson
2007-07-03 18:01 ` Grant Likely
2007-07-03 17:58 ` Sascha Hauer
2007-07-03 18:05 ` Grant Likely
2007-07-03 18:09 ` Rune Torgersen
2007-07-03 18:17 ` Grant Likely
2007-07-03 18:43 ` Rune Torgersen
2007-07-03 18:54 ` Grant Likely
2007-07-03 19:12 ` Rune Torgersen
2007-07-03 19:21 ` Grant Likely
2007-07-03 19:27 ` Rune Torgersen
2007-07-03 19:30 ` Grant Likely
2007-07-03 19:40 ` Rune Torgersen
2007-07-03 19:59 ` Wolfgang Grandegger
2007-07-03 21:14 ` Wolfgang Denk
2007-07-03 21:13 ` Wolfgang Denk
2007-07-03 22:59 ` Grant Likely
2007-07-03 23:13 ` Wolfgang Denk
2007-07-04 5:22 ` Andrew Dyer
2007-07-04 5:34 ` Grant Likely
2007-07-04 13:38 ` Wolfgang Denk
2007-07-04 16:00 ` Andrew Dyer
2007-07-04 11:46 ` Sascha Hauer
2007-07-04 11:53 ` Stefan Roese
2007-07-04 12:01 ` Sascha Hauer
2007-07-04 13:53 ` Wolfgang Denk
2007-07-04 15:39 ` Grant Likely
2007-07-04 18:49 ` Wolfgang Denk
2007-07-04 13:51 ` Wolfgang Denk
2007-07-03 19:19 ` Jerry Van Baren
2007-07-03 21:11 ` Wolfgang Denk
2007-07-03 21:06 ` Wolfgang Denk
2007-07-03 18:43 ` Sascha Hauer
2007-07-03 20:55 ` Wolfgang Denk
2007-07-04 9:32 ` Sascha Hauer
2007-07-04 10:06 ` Stefan Roese [this message]
2007-07-04 11:28 ` Sascha Hauer
2007-07-04 11:56 ` Stefan Roese
2007-07-04 12:21 ` Robert Schwebel
2007-07-04 12:49 ` Stefan Roese
2007-07-04 14:02 ` Wolfgang Denk
2007-07-04 18:43 ` Robert Schwebel
2007-07-04 19:36 ` Wolfgang Denk
2007-07-04 20:40 ` Robert Schwebel
2007-07-04 22:25 ` Ulf Samuelsson
2007-07-05 6:04 ` Stefan Roese
2007-07-05 7:01 ` Robert Schwebel
2007-07-05 7:54 ` Ulf Samuelsson
2007-07-04 12:26 ` Sascha Hauer
2007-07-04 12:37 ` Stefan Roese
2007-07-04 13:09 ` Carsten Schlote
2007-07-04 14:06 ` Wolfgang Denk
2007-07-04 14:37 ` Stefan Roese
2007-07-04 13:58 ` Wolfgang Denk
2007-07-04 15:34 ` Grant Likely
2007-07-04 12:48 ` [U-Boot-Users] U-Boot 2.0 - How to proceed...? (was RE: U-Boot-NG ?) Carsten Schlote
2007-07-04 14:17 ` Wolfgang Denk
2007-07-04 13:34 ` [U-Boot-Users] U-Boot-NG ? Wolfgang Denk
2007-07-04 14:11 ` Sascha Hauer
2007-07-03 20:48 ` Wolfgang Denk
2007-07-03 22:31 ` Sascha Hauer
2007-07-03 22:55 ` Wolfgang Denk
2007-07-03 23:09 ` Scott Wood
2007-07-04 9:37 ` Clemens Koller
2007-07-03 17:30 ` Sascha Hauer
2007-07-03 18:03 ` Grant Likely
2007-07-04 14:16 ` Wolfgang Denk
2007-07-04 14:43 ` Sascha Hauer
2007-07-04 14:56 ` Wolfgang Denk
2007-07-06 6:39 ` [U-Boot-Users] 回复: " Songmao Tian
2007-07-06 11:46 ` [U-Boot-Users] ????: " Sascha Hauer
2007-07-06 13:09 ` Songmao Tian
2007-07-06 13:27 ` Sascha Hauer
2007-07-06 14:32 ` Wolfgang Denk
2007-07-06 14:53 ` Songmao Tian
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=200707041206.18929.sr@denx.de \
--to=sr@denx.de \
--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.