error in k8 ram setup
Yinghai Lu
yhlu at tyan.com
Sun Jan 23 17:17:00 CET 2005
what's other SPD about your DIMM? Brand & model....
That bit means x4 DIMM.
YH
> -----Original Message-----
> From: Stefan Reinauer [mailto:stepan at openbios.org]
> Sent: Sunday, January 23, 2005 2:48 PM
> To: linuxbios at clustermatic.org
> Cc: yhlu at tyan.com
> Subject: error in k8 ram setup
>
> Hi,
>
> The following function in
> freebios2/src/northbridge/amd/amdk8/raminit.c
> is obviously wrong.
>
> static int update_dimm_x4(const struct mem_controller *ctrl,
> const struct mem_param *param, int i) {
> uint32_t dcl;
> int value;
> int dimm;
> value = spd_read_byte(ctrl->channel0[i], 13);
> if (value < 0) {
> return -1;
> }
> dimm = i;
> dimm += DCL_x4DIMM_SHIFT;
> dcl = pci_read_config32(ctrl->f2, DRAM_CONFIG_LOW);
> dcl &= ~(1 << dimm);
> if (value == 4) {
> dcl |= (1 << dimm);
> }
> pci_write_config32(ctrl->f2, DRAM_CONFIG_LOW, dcl);
> return 1;
> }
>
>
>
> Especially the part that checks the Primary SDRAM Width for a
> value of 4. The SPD roms I am using have the value 8 in there
> and memory does not initialize correctly.
>
> Checking (value == 4 || value == 8) or (value >= 0x4) helps,
> but I have no idea whether that is correct. It appears that
> something else has to be done. I've also seen RAMs with a
> value of 0x10.
>
> Comments? Otherwise I am going to check (value >= 0x4) in
> somewhen next week.
>
> Stefan
>
>
More information about the coreboot
mailing list