diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2007-10-11 20:20:36 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2007-10-11 20:20:36 +0200 |
commit | eadf71abc77bf97cf5aa7dbe206f4778c4b2480d (patch) | |
tree | b777f0f97d094c836300b11cc390ce10678dd417 /arch/arm | |
parent | 29fc9471f5b0f18df699f8e47c5a1fbeb5398e9e (diff) | |
download | barebox-eadf71abc77bf97cf5aa7dbe206f4778c4b2480d.tar.gz barebox-eadf71abc77bf97cf5aa7dbe206f4778c4b2480d.tar.xz |
Use Linux kernel list for drivers and devices instead of handmade
list.
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/lib/armlinux.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/arch/arm/lib/armlinux.c b/arch/arm/lib/armlinux.c index c80a6832df..f4bb814a60 100644 --- a/arch/arm/lib/armlinux.c +++ b/arch/arm/lib/armlinux.c @@ -163,19 +163,16 @@ static void setup_memory_tags (void) { struct device_d *dev = NULL; - while (1) { - dev = get_device_by_type(DEVICE_TYPE_DRAM, dev); + list_for_each_entry(dev, &device_list, list) { + if (dev->type == DEVICE_TYPE_DRAM) { + params->hdr.tag = ATAG_MEM; + params->hdr.size = tag_size (tag_mem32); - if (!dev) - return; + params->u.mem.start = dev->map_base; + params->u.mem.size = dev->size; - params->hdr.tag = ATAG_MEM; - params->hdr.size = tag_size (tag_mem32); - - params->u.mem.start = dev->map_base; - params->u.mem.size = dev->size; - - params = tag_next (params); + params = tag_next (params); + } } } #endif /* CONFIG_SETUP_MEMORY_TAGS */ |