Fix Makefile to include all copies of the SPD sources

On some systems there may be 2GB SKU that is the same as the
4GB SKU but just one channel of memory.  In that case we need
to ensure that both copies of the same SPD source end up
populated by ensuring that repeated entries are included by
using $+ instead of $^.

Alternatively we could do the check inside romstage, but it
is already set to behave this way if the SPD gets populated
correctly.

I changed spd_index to 3 in falco romstage to force it to
pretend it was a 2GB config of the same memory, then booted
to ensure it was indeed limited to 2GB.

memcfg channel[0] config (00780008):
   ECC inactive
   enhanced interleave mode on
   rank interleave on
   DIMMA 2048 MB width x16 single rank, selected
   DIMMB 0 MB width x16 single rank
memcfg channel[1] config (00600000):
   ECC inactive
   enhanced interleave mode on
   rank interleave on
   DIMMA 0 MB width x8 single rank, selected
   DIMMB 0 MB width x8 single rank

Change-Id: Ibfe5051ccda2fe69e8caff3f3c264116e3411c65
Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/59483
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Tested-by: Jay Kim <yongjaek@chromium.org>
Reviewed-on: http://review.coreboot.org/4319
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
Duncan Laurie 2013-06-20 14:53:35 -07:00 committed by Alexandru Gagniuc
parent 0db924d74c
commit 414cd436c9
3 changed files with 3 additions and 3 deletions

View File

@ -39,7 +39,7 @@ SPD_DEPS := $(foreach f, $(SPD_SOURCES), src/mainboard/$(MAINBOARDDIR)/$(f).spd.
# Include spd rom data # Include spd rom data
$(SPD_BIN): $(SPD_DEPS) $(SPD_BIN): $(SPD_DEPS)
for f in $^; \ for f in $+; \
do for c in $$(cat $$f | grep -v ^#); \ do for c in $$(cat $$f | grep -v ^#); \
do echo -e -n "\\x$$c"; \ do echo -e -n "\\x$$c"; \
done; \ done; \

View File

@ -36,7 +36,7 @@ SPD_DEPS := $(foreach f, $(SPD_SOURCES), src/mainboard/$(MAINBOARDDIR)/$(f).spd.
# Include spd rom data # Include spd rom data
$(SPD_BIN): $(SPD_DEPS) $(SPD_BIN): $(SPD_DEPS)
for f in $^; \ for f in $+; \
do for c in $$(cat $$f | grep -v ^#); \ do for c in $$(cat $$f | grep -v ^#); \
do echo -e -n "\\x$$c"; \ do echo -e -n "\\x$$c"; \
done; \ done; \

View File

@ -35,7 +35,7 @@ SPD_DEPS := $(foreach f, $(SPD_SOURCES), src/mainboard/$(MAINBOARDDIR)/$(f).spd.
# Include spd rom data # Include spd rom data
$(SPD_BIN): $(SPD_DEPS) $(SPD_BIN): $(SPD_DEPS)
for f in $^; \ for f in $+; \
do for c in $$(cat $$f | grep -v ^#); \ do for c in $$(cat $$f | grep -v ^#); \
do echo -e -n "\\x$$c"; \ do echo -e -n "\\x$$c"; \
done; \ done; \