Use lists instead of arrays for resources in devices to reduce memory usage.

Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Patrick Georgi <patrick.georgi@coresystems.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5576 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
diff --git a/src/northbridge/amd/amdfam10/northbridge.c b/src/northbridge/amd/amdfam10/northbridge.c
index 3d968a9..009b57b 100644
--- a/src/northbridge/amd/amdfam10/northbridge.c
+++ b/src/northbridge/amd/amdfam10/northbridge.c
@@ -592,7 +592,7 @@
 static void amdfam10_set_resources(device_t dev)
 {
 	u32 nodeid, link;
-	int i;
+	struct resource *res;
 
 	/* Find the nodeid */
 	nodeid = amdfam10_nodeid(dev);
@@ -600,8 +600,8 @@
 	amdfam10_create_vga_resource(dev, nodeid);
 
 	/* Set each resource we have found */
-	for(i = 0; i < dev->resources; i++) {
-		amdfam10_set_resource(dev, &dev->resource[i], nodeid);
+	for(res = dev->resource_list; res; res = res->next) {
+		amdfam10_set_resource(dev, res, nodeid);
 	}
 
 	for(link = 0; link < dev->links; link++) {
@@ -889,7 +889,7 @@
 {
 #if CONFIG_PCI_64BIT_PREF_MEM == 1
 	struct resource *io, *mem1, *mem2;
-	struct resource *resource, *last;
+	struct resource *res;
 #endif
 	unsigned long mmio_basek;
 	u32 pci_tolm;
@@ -943,14 +943,13 @@
 			mem2->base, mem2->limit, mem2->size, mem2->align);
 	}
 
-	last = &dev->resource[dev->resources];
-	for(resource = &dev->resource[0]; resource < last; resource++)
+	for(res = &dev->resource_list; res; res = res->next)
 	{
-		resource->flags |= IORESOURCE_ASSIGNED;
-		resource->flags &= ~IORESOURCE_STORED;
-		link = (resource>>2) & 3;
-		resource->flags |= IORESOURCE_STORED;
-		report_resource_stored(dev, resource, "");
+		res->flags |= IORESOURCE_ASSIGNED;
+		res->flags &= ~IORESOURCE_STORED;
+		link = (res>>2) & 3;
+		res->flags |= IORESOURCE_STORED;
+		report_resource_stored(dev, res, "");
 
 	}
 #endif