aboutsummaryrefslogtreecommitdiff
path: root/src/northbridge/via
diff options
context:
space:
mode:
authorRudolf Marek <r.marek@assembler.cz>2010-12-13 19:50:25 +0000
committerRudolf Marek <r.marek@assembler.cz>2010-12-13 19:50:25 +0000
commit97be27ebbae4693a0698838edd7ccea2239ef2db (patch)
tree8487d1d78bc0516485a14dae4a86b5bd30cb8794 /src/northbridge/via
parent29c7dfcadc49262271dba95697dab841ea076d17 (diff)
We hardcode highmemory size in every northbridge! This is bad, and especially if suspend to ram is involved. Let the default be taken from cbmem.h which also handles the suspend logic.
Abuild tested. Please check all changes if I did not make any wrong while converting this to bytes. Signed-off-by: Rudolf Marek <r.marek@assembler.cz> Acked-by: Peter Stuge <peter@stuge.se> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@6171 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/northbridge/via')
-rw-r--r--src/northbridge/via/cn400/northbridge.c11
-rw-r--r--src/northbridge/via/cn700/northbridge.c11
-rw-r--r--src/northbridge/via/cx700/northbridge.c11
-rw-r--r--src/northbridge/via/vt8601/northbridge.c11
-rw-r--r--src/northbridge/via/vt8623/northbridge.c11
5 files changed, 25 insertions, 30 deletions
diff --git a/src/northbridge/via/cn400/northbridge.c b/src/northbridge/via/cn400/northbridge.c
index 3982c9877c..2cc331b24d 100644
--- a/src/northbridge/via/cn400/northbridge.c
+++ b/src/northbridge/via/cn400/northbridge.c
@@ -178,9 +178,7 @@ static void ram_reservation(device_t dev, unsigned long index,
#endif
#if CONFIG_WRITE_HIGH_TABLES==1
-/* maximum size of high tables in KB */
-#define HIGH_TABLES_SIZE 64
-extern uint64_t high_tables_base, high_tables_size;
+#include <cbmem.h>
#endif
static void cn400_domain_set_resources(device_t dev)
@@ -211,9 +209,10 @@ static void cn400_domain_set_resources(device_t dev)
#if CONFIG_WRITE_HIGH_TABLES == 1
/* Locate the High Tables at the Top of Low Memory below the Video RAM */
- high_tables_base = (uint64_t) (tolmk - (CONFIG_VIDEO_MB *1024) - HIGH_TABLES_SIZE) * 1024;
- high_tables_size = (uint64_t) HIGH_TABLES_SIZE* 1024;
- printk(BIOS_SPEW, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n", tomk*1024, high_tables_base, high_tables_size);
+ high_tables_base = ((tolmk - (CONFIG_VIDEO_MB *1024)) * 1024) - HIGH_MEMORY_SIZE;
+ high_tables_size = HIGH_MEMORY_SIZE;
+ printk(BIOS_SPEW, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n",
+ tomk*1024, high_tables_base, high_tables_size);
#endif
/* Report the memory regions. */
diff --git a/src/northbridge/via/cn700/northbridge.c b/src/northbridge/via/cn700/northbridge.c
index d0ad095151..6400e223ba 100644
--- a/src/northbridge/via/cn700/northbridge.c
+++ b/src/northbridge/via/cn700/northbridge.c
@@ -98,9 +98,7 @@ static const struct pci_driver memctrl_driver __pci_driver = {
};
#if CONFIG_WRITE_HIGH_TABLES==1
-/* maximum size of high tables in KB */
-#define HIGH_TABLES_SIZE 64
-extern uint64_t high_tables_base, high_tables_size;
+#include <cbmem.h>
#endif
static void pci_domain_set_resources(device_t dev)
@@ -141,9 +139,10 @@ static void pci_domain_set_resources(device_t dev)
}
#if CONFIG_WRITE_HIGH_TABLES == 1
- high_tables_base = (tolmk - CONFIG_VIDEO_MB * 1024 - HIGH_TABLES_SIZE) * 1024;
- high_tables_size = HIGH_TABLES_SIZE * 1024;
- printk(BIOS_DEBUG, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n", tomk*1024, high_tables_base, high_tables_size);
+ high_tables_base = ((tolmk - CONFIG_VIDEO_MB * 1024) * 1024) - HIGH_MEMORY_SIZE;
+ high_tables_size = HIGH_MEMORY_SIZE;
+ printk(BIOS_DEBUG, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n",
+ tomk*1024, high_tables_base, high_tables_size);
#endif
/* Report the memory regions. */
diff --git a/src/northbridge/via/cx700/northbridge.c b/src/northbridge/via/cx700/northbridge.c
index df9dde6e6d..9e302983c2 100644
--- a/src/northbridge/via/cx700/northbridge.c
+++ b/src/northbridge/via/cx700/northbridge.c
@@ -33,9 +33,7 @@
#include "northbridge.h"
#if CONFIG_WRITE_HIGH_TABLES==1
-/* maximum size of high tables in KB */
-#define HIGH_TABLES_SIZE 64
-extern uint64_t high_tables_base, high_tables_size;
+#include <cbmem.h>
#endif
static void pci_domain_set_resources(device_t dev)
@@ -77,9 +75,10 @@ static void pci_domain_set_resources(device_t dev)
}
#if CONFIG_WRITE_HIGH_TABLES == 1
- high_tables_base = (tolmk - HIGH_TABLES_SIZE) * 1024;
- high_tables_size = HIGH_TABLES_SIZE* 1024;
- printk(BIOS_DEBUG, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n", tomk*1024, high_tables_base, high_tables_size);
+ high_tables_base = (tolmk * 1024) - HIGH_MEMORY_SIZE;
+ high_tables_size = HIGH_MEMORY_SIZE;
+ printk(BIOS_DEBUG, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n",
+ tomk*1024, high_tables_base, high_tables_size);
#endif
/* Report the memory regions */
diff --git a/src/northbridge/via/vt8601/northbridge.c b/src/northbridge/via/vt8601/northbridge.c
index d2731c7074..3a7ada51fb 100644
--- a/src/northbridge/via/vt8601/northbridge.c
+++ b/src/northbridge/via/vt8601/northbridge.c
@@ -46,9 +46,7 @@ static const struct pci_driver northbridge_driver __pci_driver = {
};
#if CONFIG_WRITE_HIGH_TABLES==1
-/* maximum size of high tables in KB */
-#define HIGH_TABLES_SIZE 64
-extern uint64_t high_tables_base, high_tables_size;
+#include <cbmem.h>
#endif
static void pci_domain_set_resources(device_t dev)
@@ -92,9 +90,10 @@ static void pci_domain_set_resources(device_t dev)
}
#if CONFIG_WRITE_HIGH_TABLES == 1
- high_tables_base = (tolmk - HIGH_TABLES_SIZE) * 1024;
- high_tables_size = HIGH_TABLES_SIZE* 1024;
- printk(BIOS_DEBUG, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n", tomk*1024, high_tables_base, high_tables_size);
+ high_tables_base = (tolmk * 1024) - HIGH_MEMORY_SIZE;
+ high_tables_size = HIGH_MEMORY_SIZE;
+ printk(BIOS_DEBUG, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n",
+ tomk*1024, high_tables_base, high_tables_size);
#endif
/* Report the memory regions */
diff --git a/src/northbridge/via/vt8623/northbridge.c b/src/northbridge/via/vt8623/northbridge.c
index f67d13c021..19f14d56a4 100644
--- a/src/northbridge/via/vt8623/northbridge.c
+++ b/src/northbridge/via/vt8623/northbridge.c
@@ -106,9 +106,7 @@ static const struct pci_driver agp_driver __pci_driver = {
};
#if CONFIG_WRITE_HIGH_TABLES==1
-/* maximum size of high tables in KB */
-#define HIGH_TABLES_SIZE 64
-extern uint64_t high_tables_base, high_tables_size;
+#include <cbmem.h>
#endif
static void pci_domain_set_resources(device_t dev)
@@ -152,9 +150,10 @@ static void pci_domain_set_resources(device_t dev)
}
#if CONFIG_WRITE_HIGH_TABLES == 1
- high_tables_base = (tolmk - HIGH_TABLES_SIZE) * 1024;
- high_tables_size = HIGH_TABLES_SIZE* 1024;
- printk(BIOS_DEBUG, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n", tomk*1024, high_tables_base, high_tables_size);
+ high_tables_base = (tolmk * 1024) - HIGH_MEMORY_SIZE;
+ high_tables_size = HIGH_MEMORY_SIZE;
+ printk(BIOS_DEBUG, "tom: %lx, high_tables_base: %llx, high_tables_size: %llx\n",
+ tomk*1024, high_tables_base, high_tables_size);
#endif
/* Report the memory regions */