summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMyles Watson <mylesgw@gmail.com>2010-09-13 14:50:20 +0000
committerMyles Watson <mylesgw@gmail.com>2010-09-13 14:50:20 +0000
commit6c029e6963eed378f80eeaebd5cbc7827c5d5c9f (patch)
tree9bc084ca24180f7e7ff951378428f2df315bf3c5
parent687b3ba327a703e9951c1297fa49aefce0ea5655 (diff)
Add reserved areas for fam10.
Signed-off-by: Myles Watson <mylesgw@gmail.com> Acked-by: Myles Watson <mylesgw@gmail.com> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5808 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
-rw-r--r--src/northbridge/amd/amdfam10/northbridge.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/northbridge/amd/amdfam10/northbridge.c b/src/northbridge/amd/amdfam10/northbridge.c
index 727a5ba10c..28ccbfd164 100644
--- a/src/northbridge/amd/amdfam10/northbridge.c
+++ b/src/northbridge/amd/amdfam10/northbridge.c
@@ -865,9 +865,22 @@ static void disable_hoist_memory(unsigned long hole_startk, int node_id)
#if CONFIG_WRITE_HIGH_TABLES==1
#define HIGH_TABLES_SIZE 64 // maximum size of high tables in KB
extern uint64_t high_tables_base, high_tables_size;
+#endif
+
#if CONFIG_GFXUMA == 1
extern uint64_t uma_memory_base, uma_memory_size;
-#endif
+
+static void add_uma_resource(struct device *dev, int index)
+{
+ struct resource *resource;
+
+ printk(BIOS_DEBUG, "Adding UMA memory area\n");
+ resource = new_resource(dev, index);
+ resource->base = (resource_t) uma_memory_base;
+ resource->size = (resource_t) uma_memory_size;
+ resource->flags = IORESOURCE_MEM | IORESOURCE_RESERVE |
+ IORESOURCE_FIXED | IORESOURCE_STORED | IORESOURCE_ASSIGNED;
+}
#endif
static void amdfam10_domain_set_resources(device_t dev)
@@ -1090,6 +1103,10 @@ static void amdfam10_domain_set_resources(device_t dev)
#endif
}
+#if CONFIG_GFXUMA == 1
+ add_uma_resource(dev, 7);
+#endif
+
for(link = dev->link_list; link; link = link->next) {
if (link->children) {
assign_resources(link);