summaryrefslogtreecommitdiff
path: root/src/northbridge/amd/gx2
diff options
context:
space:
mode:
authorNils Jacobs <njacobs8@hetnet.nl>2010-11-05 00:23:11 +0000
committerUwe Hermann <uwe@hermann-uwe.de>2010-11-05 00:23:11 +0000
commiteca32808cb271f3f11c2fdb29eaf71c7f192e765 (patch)
tree4fe0f00e4f26d2e09f77754fce89f70f37272486 /src/northbridge/amd/gx2
parentf29b3b68c849ea6cb8124e11d06427ab92bc4451 (diff)
downloadcoreboot-eca32808cb271f3f11c2fdb29eaf71c7f192e765.tar.xz
Add Kconfig CPU speed selection to Geode GX2 boards.
This is Abuild and boot tested. Signed-off-by: Nils Jacobs <njacobs8@hetnet.nl> Acked-by: Uwe Hermann <uwe@hermann-uwe.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@6023 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/northbridge/amd/gx2')
-rw-r--r--src/northbridge/amd/gx2/Kconfig18
-rw-r--r--src/northbridge/amd/gx2/pll_reset.c10
2 files changed, 19 insertions, 9 deletions
diff --git a/src/northbridge/amd/gx2/Kconfig b/src/northbridge/amd/gx2/Kconfig
index b62d053d9d..a9ebb3c13b 100644
--- a/src/northbridge/amd/gx2/Kconfig
+++ b/src/northbridge/amd/gx2/Kconfig
@@ -21,9 +21,19 @@ config NORTHBRIDGE_AMD_GX2
bool
select GEODE_VSA
-# Valid PROCESSOR_MHZ options: 300/366/400 MHz.
-config PROCESSOR_MHZ
+# The GX2_PROCESSOR_MHZ options let you chose the correct GX2 processor
+# speed in the mainboard's Kconfig file.
+config GX2_PROCESSOR_MHZ_300
+ bool
+config GX2_PROCESSOR_MHZ_366
+ bool
+config GX2_PROCESSOR_MHZ_400
+ bool
+
+# Map the config names to an integer (MHz).
+config GX2_PROCESSOR_MHZ
int
- default 366
- depends on NORTHBRIDGE_AMD_GX2
+ default 300 if GX2_PROCESSOR_MHZ_300
+ default 366 if GX2_PROCESSOR_MHZ_366
+ default 400 if GX2_PROCESSOR_MHZ_400
diff --git a/src/northbridge/amd/gx2/pll_reset.c b/src/northbridge/amd/gx2/pll_reset.c
index 81cc28d9c8..1f3c65dcbe 100644
--- a/src/northbridge/amd/gx2/pll_reset.c
+++ b/src/northbridge/amd/gx2/pll_reset.c
@@ -71,14 +71,14 @@ static void pll_reset(void)
unsigned SyncBits; /* store the sync bits in up ebx */
unsigned DEFAULT_FBDIV;
- if (CONFIG_PROCESSOR_MHZ == 400) {
+ if (CONFIG_GX2_PROCESSOR_MHZ == 400) {
DEFAULT_FBDIV = 24;
- } else if (CONFIG_PROCESSOR_MHZ == 366) {
+ } else if (CONFIG_GX2_PROCESSOR_MHZ == 366) {
DEFAULT_FBDIV = 22;
- } else if (CONFIG_PROCESSOR_MHZ == 300) {
+ } else if (CONFIG_GX2_PROCESSOR_MHZ == 300) {
DEFAULT_FBDIV = 18;
} else {
- printk(BIOS_ERR, "Unsupported PROCESSOR_MHZ setting!\n");
+ printk(BIOS_ERR, "Unsupported GX2_PROCESSOR_MHZ setting!\n");
post_code(POST_PLL_CPU_VER_FAIL);
__asm__ __volatile__("hlt\n");
}
@@ -195,6 +195,6 @@ static void pll_reset(void)
static unsigned int GeodeLinkSpeed(void)
{
unsigned geodelinkspeed;
- geodelinkspeed = ((CONFIG_PROCESSOR_MHZ * DEFAULT_VDIV) / DEFAULT_MDIV);
+ geodelinkspeed = ((CONFIG_GX2_PROCESSOR_MHZ * DEFAULT_VDIV) / DEFAULT_MDIV);
return (geodelinkspeed);
}