summaryrefslogtreecommitdiffstats
path: root/drivers/char/agp/parisc-agp.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2009-03-18 10:37:43 +0100
committerIngo Molnar <mingo@elte.hu>2009-03-18 10:37:43 +0100
commit04dfcfcb54b073133bcca2c8f25b55e904558931 (patch)
tree123d13f9e242751f629924e92fcb297dc669d767 /drivers/char/agp/parisc-agp.c
parent0bd5c4f7c874cf48ff7904dcf8a59988c8fea0e8 (diff)
parentee568b25ee9e160b32d1aef73d8b2ee9c05d34db (diff)
downloadblackbird-op-linux-04dfcfcb54b073133bcca2c8f25b55e904558931.tar.gz
blackbird-op-linux-04dfcfcb54b073133bcca2c8f25b55e904558931.zip
Merge branch 'linus' into core/iommu
Diffstat (limited to 'drivers/char/agp/parisc-agp.c')
-rw-r--r--drivers/char/agp/parisc-agp.c23
1 files changed, 11 insertions, 12 deletions
diff --git a/drivers/char/agp/parisc-agp.c b/drivers/char/agp/parisc-agp.c
index db60539bf67a..699e3422ad93 100644
--- a/drivers/char/agp/parisc-agp.c
+++ b/drivers/char/agp/parisc-agp.c
@@ -359,9 +359,16 @@ fail:
return error;
}
-static struct device *next_device(struct klist_iter *i) {
- struct klist_node * n = klist_next(i);
- return n ? container_of(n, struct device, knode_parent) : NULL;
+static int
+find_quicksilver(struct device *dev, void *data)
+{
+ struct parisc_device **lba = data;
+ struct parisc_device *padev = to_parisc_device(dev);
+
+ if (IS_QUICKSILVER(padev))
+ *lba = padev;
+
+ return 0;
}
static int
@@ -372,8 +379,6 @@ parisc_agp_init(void)
int err = -1;
struct parisc_device *sba = NULL, *lba = NULL;
struct lba_device *lbadev = NULL;
- struct device *dev = NULL;
- struct klist_iter i;
if (!sba_list)
goto out;
@@ -386,13 +391,7 @@ parisc_agp_init(void)
}
/* Now search our Pluto for our precious AGP device... */
- klist_iter_init(&sba->dev.klist_children, &i);
- while ((dev = next_device(&i))) {
- struct parisc_device *padev = to_parisc_device(dev);
- if (IS_QUICKSILVER(padev))
- lba = padev;
- }
- klist_iter_exit(&i);
+ device_for_each_child(&sba->dev, &lba, find_quicksilver);
if (!lba) {
printk(KERN_INFO DRVPFX "No AGP devices found.\n");
OpenPOWER on IntegriCloud