On Mon, 22 Feb 2010 15:54:08 +0100, Stefan Reinauer stepan@coresystems.de wrote:
On 2/22/10 1:56 PM, Joseph Smith wrote:
I use die in raminit for memory compatibility checks. If the memory is
not
compatible, there is no use moving on...so we die().
I agree... to some extent...
The file I posted does not change the explicit die() calls though but only the implicit die() in the two macros ASSERT and BUG.
Oh ok.
As for memory compatibility, I saw the same thing on i945 - it does not support ECC RAM and some closed source BIOSes just die() in the case of ECC memory detected. However, it is possible to use the memory in non-ECC mode, so not using die() might still be worth thinking about in such a case. Worst case ram init does not work and then coreboot die()s automatically when it tries jumping to stage 2 in RAM. It should, however, always print a big fat BIOS_ERR warning in that case.
Yes, whether you die() or try to get past you should always print_err() a big fat message and then if it needs to die("HALT\r\n")