From 009ad83d5c1791816801216c496ba9b3fe352fb5 Mon Sep 17 00:00:00 2001 From: Florian Zumbiehl Date: Tue, 6 Dec 2011 10:31:10 +0100 Subject: asus k8v-x: explicitly set RAM and bus voltages Change-Id: I9426cafc252ee765d723af569c4a90e090d313d9 Signed-off-by: Florian Zumbiehl Reviewed-on: http://review.coreboot.org/482 Tested-by: build bot (Jenkins) Reviewed-by: Peter Stuge --- src/mainboard/asus/k8v-x/romstage.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/mainboard/asus/k8v-x') diff --git a/src/mainboard/asus/k8v-x/romstage.c b/src/mainboard/asus/k8v-x/romstage.c index 014ce68b1f..f24c4d40c8 100644 --- a/src/mainboard/asus/k8v-x/romstage.c +++ b/src/mainboard/asus/k8v-x/romstage.c @@ -199,6 +199,19 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx) smbus_write_byte(0x48, 0x07, smbus_read_byte(0x48, 0x07) | 0x80); smbus_write_byte(0x4a, 0x07, smbus_read_byte(0x4a, 0x07) | 0x10); + unsigned char mask; + + mask = 0; +// mask |= 1 /* AGP voltage 1.7 V (not verified, just vendor BIOS value) */ +// mask |= 2 /* V-Link voltage 2.6 V (not verified either) */ + smbus_write_byte(0x4a, 0x00, (smbus_read_byte(0x4a, 0x00) & ~0x0f) | (0x0f ^ (mask << 2))); + smbus_write_byte(0x4a, 0x01, (smbus_read_byte(0x4a, 0x01) & ~0x03) | (0x03 ^ mask)); + + mask = 25; /* RAM voltage in decivolts, valid range from 25 to 28 */ + mask = 3 - (mask - 25); + smbus_write_byte(0x4a, 0x02, 0x4f | (mask << 4)); + smbus_write_byte(0x4a, 0x03, 0x04 | mask); + sdram_initialize(sysinfo->nodes, sysinfo->ctrl, sysinfo); post_cache_as_ram(); } -- cgit v1.2.3