Hello,
I'm working on a coreboot port to the Sun Ultra 40 M2. This is an MCP55
based dual socket Opteron system with two memory banks per node (four slots
each.)
It's currently in a dual dualcore configuration with 8GB of DDR2 memory,
two 2GB sticks per bank.
I'm using the Tyan s2912 mainboard definition as a base (not fam10.) I've
observed a couple different behaviours.
1) Upon cold boot, the system will sometimes (not always) reboot itself
approx every 2 seconds before getting to raminit - it always passes the
first stage of HT negotiation but (after the soft-reset) fails on the line
"dev1 output ln_width1=0x" (then resets without completing the value)
2) The system usually gets to raminit at least initially. Memory detection
goes very quickly until "TrainDQSPos: MutualCSPassW[48]" where it then
slows to a crawl. After this, issue 1 reoccurs over and over -
http://pastebin.com/aNUZf1Hr (issues 2, followed by issue 1)
3) When the system is booted to linux and the vendor code is (hot) swapped
for coreboot and warm rebooted initiated, the system will slowly move past
"TrainDQSPos: MutualCSPassW[48]" without rebooting (issues #2 is always
followed by a reboot) and has completed cache to ram, then rebooted. This
is the furthest it has gotten - http://pastebin.com/5vQPgWQn
Any advice would be greatly appreciated!
Regards,
Nick
the following patch was just integrated into master:
commit d39d04c45dd0a66b7d7349fd38012abe4a5b76bf
Author: Sven Schnelle <svens(a)stackframe.org>
Date: Sun Oct 30 09:57:35 2011 +0100
Fix usb debug dongle support
- move enable_usbdebug() declaration to usbdebug.h
- reinitialize debug driver in ramstage, as copying the data
structure from romstage doesn't work right now. This way of copying
data from romstage to ramstage is really board/cpu specific, and is
likely to break often. So don't do it.
Change-Id: I394678ded6679c1803e29eb691b926182bdcab68
Signed-off-by: Sven Schnelle <svens(a)stackframe.org>
Build-Tested: build bot (Jenkins) at Sun Oct 30 12:47:32 2011, giving +1
Reviewed-By: Stefan Reinauer <stefan.reinauer(a)coreboot.org> at Mon Oct 31 04:06:10 2011, giving +2
See http://review.coreboot.org/355 for details.
-gerrit
the following patch was just integrated into master:
commit 23e3aa28c92fc2072584584d59a9c9a65ae8f64f
Author: Patrick Georgi <patrick(a)georgi-clan.de>
Date: Sat Oct 29 00:00:19 2011 +0200
crossgcc: Fix colors with dash
Ubuntu (and probably other distros) have dash as /bin/sh, which
doesn't display colors by itself. If /usr/bin/printf is found, it's
used instead of the internal printf to re-enable colors.
Change-Id: I3e6d413cd0c8a46ef91821d8c07e88166de58af4
Signed-off-by: Patrick Georgi <patrick(a)georgi-clan.de>
Build-Tested: build bot (Jenkins) at Sat Oct 29 00:16:01 2011, giving +1
Reviewed-By: Stefan Reinauer <stefan.reinauer(a)coreboot.org> at Sun Oct 30 21:58:41 2011, giving +2
See http://review.coreboot.org/352 for details.
-gerrit
the following patch was just integrated into master:
commit b403fdfcb1e44dddee30be9820e7e1db5a41764c
Author: Rudolf Marek <r.marek(a)assembler.cz>
Date: Sun Oct 30 18:06:58 2011 +0100
Fix slow CAR execution introduced by 7c7d87182feb78cb2bc02fb3558bef56a41682c9
It is meant to be a address and not a dereference. Otherwise MTRR
is filled with code and not with the address.
This is what I hate at most on the AT&T syntax. Instead of taking
the address, it was a dereference. Not greatly visible, except
I wondered why opcode is not 0xb4 but 0xa1 and it took another
half an our to see it.
Change-Id: I6b339656024de8f6e6b3cde63b16b7ff5562d055
Signed-off-by: Rudolf Marek <r.marek(a)assembler.cz>
Build-Tested: build bot (Jenkins) at Sun Oct 30 21:25:01 2011, giving +1
Reviewed-By: Stefan Reinauer <stefan.reinauer(a)coreboot.org> at Sun Oct 30 21:02:23 2011, giving +2
Reviewed-By: Rudolf Marek <r.marek(a)assembler.cz> at Sun Oct 30 21:24:13 2011, giving +2
See http://review.coreboot.org/358 for details.
-gerrit
Stefan Reinauer (stefan.reinauer(a)coreboot.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/358
-gerrit
commit b403fdfcb1e44dddee30be9820e7e1db5a41764c
Author: Rudolf Marek <r.marek(a)assembler.cz>
Date: Sun Oct 30 18:06:58 2011 +0100
Fix slow CAR execution introduced by 7c7d87182feb78cb2bc02fb3558bef56a41682c9
It is meant to be a address and not a dereference. Otherwise MTRR
is filled with code and not with the address.
This is what I hate at most on the AT&T syntax. Instead of taking
the address, it was a dereference. Not greatly visible, except
I wondered why opcode is not 0xb4 but 0xa1 and it took another
half an our to see it.
Change-Id: I6b339656024de8f6e6b3cde63b16b7ff5562d055
Signed-off-by: Rudolf Marek <r.marek(a)assembler.cz>
---
src/cpu/amd/car/cache_as_ram.inc | 2 +-
src/cpu/intel/car/cache_as_ram.inc | 2 +-
src/cpu/intel/model_106cx/cache_as_ram.inc | 2 +-
src/cpu/intel/model_6ex/cache_as_ram.inc | 2 +-
src/cpu/intel/model_6fx/cache_as_ram.inc | 2 +-
src/cpu/via/car/cache_as_ram.inc | 6 +++---
6 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/cpu/amd/car/cache_as_ram.inc b/src/cpu/amd/car/cache_as_ram.inc
index 9d2b400..b9e02f3 100644
--- a/src/cpu/amd/car/cache_as_ram.inc
+++ b/src/cpu/amd/car/cache_as_ram.inc
@@ -290,7 +290,7 @@ clear_fixed_var_mtrr_out:
* IMPORTANT: The following calculation _must_ be done at runtime. See
* http://www.coreboot.org/pipermail/coreboot/2010-October/060855.html
*/
- movl copy_and_run, %eax
+ movl $copy_and_run, %eax
andl $(~(CONFIG_XIP_ROM_SIZE - 1)), %eax
orl $MTRR_TYPE_WRBACK, %eax
wrmsr
diff --git a/src/cpu/intel/car/cache_as_ram.inc b/src/cpu/intel/car/cache_as_ram.inc
index 4ad2fce..26fec6e 100644
--- a/src/cpu/intel/car/cache_as_ram.inc
+++ b/src/cpu/intel/car/cache_as_ram.inc
@@ -241,7 +241,7 @@ clear_fixed_var_mtrr_out:
* IMPORTANT: The following calculation _must_ be done at runtime. See
* http://www.coreboot.org/pipermail/coreboot/2010-October/060855.html
*/
- movl copy_and_run, %eax
+ movl $copy_and_run, %eax
andl $(~(CONFIG_XIP_ROM_SIZE - 1)), %eax
orl $MTRR_TYPE_WRBACK, %eax
wrmsr
diff --git a/src/cpu/intel/model_106cx/cache_as_ram.inc b/src/cpu/intel/model_106cx/cache_as_ram.inc
index b45599a..9f7ceaf 100644
--- a/src/cpu/intel/model_106cx/cache_as_ram.inc
+++ b/src/cpu/intel/model_106cx/cache_as_ram.inc
@@ -106,7 +106,7 @@ clear_mtrrs:
* IMPORTANT: The following calculation _must_ be done at runtime. See
* http://www.coreboot.org/pipermail/coreboot/2010-October/060855.html
*/
- movl copy_and_run, %eax
+ movl $copy_and_run, %eax
andl $(~(CONFIG_XIP_ROM_SIZE - 1)), %eax
orl $MTRR_TYPE_WRBACK, %eax
wrmsr
diff --git a/src/cpu/intel/model_6ex/cache_as_ram.inc b/src/cpu/intel/model_6ex/cache_as_ram.inc
index fa35fc9..3a12cf6 100644
--- a/src/cpu/intel/model_6ex/cache_as_ram.inc
+++ b/src/cpu/intel/model_6ex/cache_as_ram.inc
@@ -106,7 +106,7 @@ clear_mtrrs:
* IMPORTANT: The following calculation _must_ be done at runtime. See
* http://www.coreboot.org/pipermail/coreboot/2010-October/060855.html
*/
- movl copy_and_run, %eax
+ movl $copy_and_run, %eax
andl $(~(CONFIG_XIP_ROM_SIZE - 1)), %eax
orl $MTRR_TYPE_WRBACK, %eax
wrmsr
diff --git a/src/cpu/intel/model_6fx/cache_as_ram.inc b/src/cpu/intel/model_6fx/cache_as_ram.inc
index a869011..2ba1872 100644
--- a/src/cpu/intel/model_6fx/cache_as_ram.inc
+++ b/src/cpu/intel/model_6fx/cache_as_ram.inc
@@ -113,7 +113,7 @@ clear_mtrrs:
* IMPORTANT: The following calculation _must_ be done at runtime. See
* http://www.coreboot.org/pipermail/coreboot/2010-October/060855.html
*/
- movl copy_and_run, %eax
+ movl $copy_and_run, %eax
andl $(~(CONFIG_XIP_ROM_SIZE - 1)), %eax
orl $MTRR_TYPE_WRBACK, %eax
wrmsr
diff --git a/src/cpu/via/car/cache_as_ram.inc b/src/cpu/via/car/cache_as_ram.inc
index d0c43c9..ad2805e 100644
--- a/src/cpu/via/car/cache_as_ram.inc
+++ b/src/cpu/via/car/cache_as_ram.inc
@@ -120,7 +120,7 @@ clear_fixed_var_mtrr_out:
* IMPORTANT: The following calculation _must_ be done at runtime. See
* http://www.coreboot.org/pipermail/coreboot/2010-October/060855.html
*/
- movl copy_and_run, %eax
+ movl $copy_and_run, %eax
andl $(~(CONFIG_XIP_ROM_SIZE - 1)), %eax
orl $MTRR_TYPE_WRBACK, %eax
wrmsr
@@ -166,7 +166,7 @@ clear_fixed_var_mtrr_out:
* IMPORTANT: The following calculation _must_ be done at runtime. See
* http://www.coreboot.org/pipermail/coreboot/2010-October/060855.html
*/
- movl copy_and_run, %esi
+ movl $copy_and_run, %esi
andl $(~(CONFIG_XIP_ROM_SIZE - 1)), %ei
movl %esi, %edi
movl $(CONFIG_XIP_ROM_SIZE >> 2), %ecx
@@ -247,7 +247,7 @@ testok:
* IMPORTANT: The following calculation _must_ be done at runtime. See
* http://www.coreboot.org/pipermail/coreboot/2010-October/060855.html
*/
- movl copy_and_run, %eax
+ movl $copy_and_run, %eax
andl $(~(CONFIG_XIP_ROM_SIZE - 1)), %eax
orl $MTRR_TYPE_WRBACK, %eax
wrmsr
the following patch was just integrated into master:
commit 87135886bc6558aaa43da2189da863362a488e45
Author: Stefan Reinauer <stefan.reinauer(a)coreboot.org>
Date: Sun Oct 30 20:30:48 2011 +0100
Fix gcc 4.6.1 breakage of southbridge/amd/sr5650/pcie.c.
Change-Id: I3ccb3860207e1b3ccac4313f7b537c434af5166f
Signed-off-by: Stefan Reinauer <reinauer(a)google.com>
Build-Tested: build bot (Jenkins) at Sun Oct 30 20:41:17 2011, giving +1
Reviewed-By: Stefan Reinauer <stefan.reinauer(a)coreboot.org> at Sun Oct 30 20:31:55 2011, giving +2
Reviewed-By: Rudolf Marek <r.marek(a)assembler.cz> at Sun Oct 30 20:49:13 2011, giving +2
See http://review.coreboot.org/360 for details.
-gerrit
Hello,
jenkins:
> [...]
> Patch Set 4: Fails
>
> Build Failed
>
> http://qa.coreboot.org/job/coreboot-gerrit/671/ : FAILURE
jenkins log:
> CC cpu/amd/model_10xxx/processor_name.ramstage.o
> src/southbridge/amd/sr5650/pcie.c: In function 'sr5650_gpp_sb_init':
> src/southbridge/amd/sr5650/pcie.c:377:19: error: 'slave_cpl' may be used
> uninitialized in this function [-Werror=uninitialized]
> src/southbridge/amd/sr5650/pcie.c:343:6: note: 'slave_cpl' was declared here
> CC cpu/amd/model_10xxx/update_microcode.ramstage.o
Has anybody an idea where this error comes from?
I couldn't find any reference to my patched file there.
Thanks,
Christoph Grenz