[coreboot] bug in geodelx dram setup code in v3?
Mart Raudsepp
mart.raudsepp at artecdesign.ee
Mon Jul 28 08:45:13 CEST 2008
Hello,
Ühel kenal päeval, P, 2008-07-27 kell 22:11, kirjutas ron minnich:
> Index: mainboard/artecgroup/dbe62/initram.c
> ===================================================================
> --- mainboard/artecgroup/dbe62/initram.c (revision 698)
> +++ mainboard/artecgroup/dbe62/initram.c (working copy)
> @@ -33,7 +33,7 @@
> #include <northbridge/amd/geodelx/raminit.h>
> #include <spd.h>
>
> -#define MANUALCONF 1 /* Do manual strapped PLL config */
> +#define MANUALCONF 0 /* Do manual strapped PLL config */
It's correct to do automatic PLL config from bootstraps here, but this
is unrelated to the provided log message
> #define PLLMSRHI 0x000003d9 /* manual settings for the PLL */
> #define PLLMSRLO 0x07de0080 /* from factory bios */
> #define DIMM0 ((u8) 0xA0)
> @@ -123,6 +123,7 @@
> */
> int main(void)
> {
> + struct msr msr;
> void dumplxmsrs(void);
>
> u8 smb_devices[] = {
> @@ -140,7 +141,7 @@
> pll_reset(MANUALCONF, PLLMSRHI, PLLMSRLO);
> printk(BIOS_DEBUG, "done pll reset\n");
>
> - cpu_reg_init(0, DIMM0, DIMM1);
> + cpu_reg_init(0, DIMM0, DIMM1, 0);
> printk(BIOS_DEBUG, "done cpu reg init\n");
>
> sdram_set_registers();
So we have it unterminated and it was set up as terminated before or
that wasn't an issue for your memtest quest?
> @@ -152,6 +153,16 @@
> sdram_enable(DIMM0, DIMM1);
> printk(BIOS_DEBUG, "done sdram enable\n");
>
> + /* factory bios sets writethrough on RCONF! */
> + /* This is just a hack put here because no sane mainboard
> + * would ever require writethrough. This is not worth any
> + * visibility in Kconfig or dts or anything for that matter.
> + */
> + msr = rdmsr(CPU_RCONF_DEFAULT);
> + msr.lo |= RCONF_WT(RCONF_DEFAULT_LOWER_SYSRC_SHIFT);
> + wrmsr(CPU_RCONF_DEFAULT, msr);
> + printk(BIOS_DEBUG, "Set write through\n");
> +
What's this? Factory BIOS is GSW? Artec LinuxBIOS-v2 branch should be
the reference here instead in that case and if that had it
write-through, then it might be wrong, would have to check.
Also unrelated to the commit log message as provided
> dumplxmsrs();
> /* Check low memory */
> /* The RAM is working now. Leave this test commented out but
Regards,
Mart Raudsepp
Artec Design LLC
More information about the coreboot
mailing list