diff options
author | Myles Watson <mylesgw@gmail.com> | 2010-06-09 22:41:35 +0000 |
---|---|---|
committer | Myles Watson <mylesgw@gmail.com> | 2010-06-09 22:41:35 +0000 |
commit | 894a34715f41f7c819a593dc3ff8e3033ffaa9fe (patch) | |
tree | 12ed2a5e10c6f181caa4c1add2ee8239abf82bfe /src/southbridge/amd | |
parent | 6507b390467591928f16aab68f247321ad3f2262 (diff) | |
download | coreboot-894a34715f41f7c819a593dc3ff8e3033ffaa9fe.tar.xz |
Same conversion as with resources from static arrays to lists, except
there is no free list.
Converting resource arrays to lists reduced the size of each device
struct from 1092 to 228 bytes.
Converting link arrays to lists reduced the size of each device struct
from 228 to 68 bytes.
Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5626 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/southbridge/amd')
-rw-r--r-- | src/southbridge/amd/amd8131/amd8131_bridge.c | 2 | ||||
-rw-r--r-- | src/southbridge/amd/amd8132/amd8132_bridge.c | 2 | ||||
-rw-r--r-- | src/southbridge/amd/sb600/sb600_lpc.c | 6 | ||||
-rw-r--r-- | src/southbridge/amd/sb700/sb700_lpc.c | 6 |
4 files changed, 8 insertions, 8 deletions
diff --git a/src/southbridge/amd/amd8131/amd8131_bridge.c b/src/southbridge/amd/amd8131/amd8131_bridge.c index ae2c4cffcb..d258450a06 100644 --- a/src/southbridge/amd/amd8131/amd8131_bridge.c +++ b/src/southbridge/amd/amd8131/amd8131_bridge.c @@ -25,7 +25,7 @@ static void amd8131_walk_children(struct bus *bus, continue; } if (child->hdr_type == PCI_HEADER_TYPE_BRIDGE) { - amd8131_walk_children(&child->link[0], visit, ptr); + amd8131_walk_children(child->link_list, visit, ptr); } visit(child, ptr); } diff --git a/src/southbridge/amd/amd8132/amd8132_bridge.c b/src/southbridge/amd/amd8132/amd8132_bridge.c index 5bbc3dc5ba..2ce46cd16a 100644 --- a/src/southbridge/amd/amd8132/amd8132_bridge.c +++ b/src/southbridge/amd/amd8132/amd8132_bridge.c @@ -47,7 +47,7 @@ static void amd8132_walk_children(struct bus *bus, continue; } if (child->hdr_type == PCI_HEADER_TYPE_BRIDGE) { - amd8132_walk_children(&child->link[0], visit, ptr); + amd8132_walk_children(child->link_list, visit, ptr); } visit(child, ptr); } diff --git a/src/southbridge/amd/sb600/sb600_lpc.c b/src/southbridge/amd/sb600/sb600_lpc.c index 0653772385..fd06f4478d 100644 --- a/src/southbridge/amd/sb600/sb600_lpc.c +++ b/src/southbridge/amd/sb600/sb600_lpc.c @@ -106,7 +106,7 @@ static void sb600_lpc_read_resources(device_t dev) */ static void sb600_lpc_enable_childrens_resources(device_t dev) { - u32 link; + struct bus *link; u32 reg, reg_x; int var_num = 0; u16 reg_var[3]; @@ -114,9 +114,9 @@ static void sb600_lpc_enable_childrens_resources(device_t dev) reg = pci_read_config32(dev, 0x44); reg_x = pci_read_config32(dev, 0x48); - for (link = 0; link < dev->links; link++) { + for (link = dev->link_list; link; link = link->next) { device_t child; - for (child = dev->link[link].children; child; + for (child = link->children; child; child = child->sibling) { enable_resources(child); if (child->enabled diff --git a/src/southbridge/amd/sb700/sb700_lpc.c b/src/southbridge/amd/sb700/sb700_lpc.c index ab0a5ba6cc..e8bfbfac5d 100644 --- a/src/southbridge/amd/sb700/sb700_lpc.c +++ b/src/southbridge/amd/sb700/sb700_lpc.c @@ -118,7 +118,7 @@ static void sb700_lpc_set_resources(struct device *dev) */ static void sb700_lpc_enable_childrens_resources(device_t dev) { - u32 link; + struct bus *link; u32 reg, reg_x; int var_num = 0; u16 reg_var[3]; @@ -126,9 +126,9 @@ static void sb700_lpc_enable_childrens_resources(device_t dev) reg = pci_read_config32(dev, 0x44); reg_x = pci_read_config32(dev, 0x48); - for (link = 0; link < dev->links; link++) { + for (link = dev->link_list; link; link = link->next) { device_t child; - for (child = dev->link[link].children; child; + for (child = link->children; child; child = child->sibling) { enable_resources(child); if (child->enabled |