[U-Boot-Users] U-Boot-NG ?

Robert Schwebel
2007-07-04T12:21:01Z

On Wed, Jul 04, 2007 at 01:56:31PM +0200, Stefan Roese wrote:
> Yes, this could be done. I just wanted to make a point, that not all
> SDRAM configuration are "easy" and fit into a few lines of code.

Not easy, but early :-)

> I'm still a little undecided, if a "simple" output mechanism is
> enough. Of course you can life with a hardwired baudrate on most
> systems, so that you don't have to read the environment. But there
> will be some systems where the user configured a different baudrate
> and the outputs from the DDR2 init routine will not be readable.

Let's look at the PC architecture, which is really supposed to be
customized by dummy users. It just makes BEEEP if the memory init goes
wrong. People designed it this way on purpose. I know that there are
brain damaged hardware designs in the industry, but please don't let us
make strategic design decisions based on crappy hardware instead of the
95% case. I recognize that it is a good feature for these cases, but
it's not a good excuse for transferring a straight forward, simple and
maintainable design into a can of worms.

> That's the way it *should* be. But unfortunately this is not always
> the case. At least we have seen it happen before, that not supported
> modules were shipped. :-(

If a hardware manufacturer does so, surely nobody will blame the u-boot
provider for that. If somebody forgets to solder the flash chips onto
his board, nobody expects u-boot to print out a proper warning as well
:-)

> If no output on the serial console always means: "problem with
> memory", than this would be an easy indication for SDRAM problems. But
> I have seen lots of other errors, that lead to a hangup in the very
> early boot stage. Most of the time *before* SDRAM is initialized.

Because lots of things are done before the SDRAM is initialized. All
these would be done later in our design and thus would have access to
the console.

> Don't get me wrong. I generally like this 2 stage approach. For
> example it fits the NAND booting support (see nand_spl/*) where a
> small (4k on 4xx) first stage loader is needed. I'm just a little
> hesitant about dropping the full featured printf in early boot stages.

I assume the way we do the discussion now is really right - we throw in
"it can be soooooo easy" ideas, you tell us the corner cases and then we
iterate until everybody is happy :-)

Robert
--
Dipl.-Ing. Robert Schwebel | http://www.pengutronix.de
Pengutronix - Linux Solutions for Science and Industry
Handelsregister: Amtsgericht Hildesheim, HRA 2686
Hannoversche Str. 2, 31134 Hildesheim, Germany
Phone: +49-5121-206917-0 | Fax: +49-5121-206917-9