ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / arch / arm / common / platform.c
1 #include <linux/ioport.h>
2 #include <linux/device.h>
3 #include <linux/init.h>
4
5 int __init platform_add_device(struct platform_device *dev)
6 {
7         int i;
8
9         for (i = 0; i < dev->num_resources; i++) {
10                 struct resource *r = &dev->resource[i];
11
12                 r->name = dev->dev.bus_id;
13
14                 if (r->flags & IORESOURCE_MEM &&
15                     request_resource(&iomem_resource, r)) {
16                         printk(KERN_ERR
17                                "%s%d: failed to claim resource %d\n",
18                                dev->name, dev->id, i);
19                         break;
20                 }
21         }
22         if (i == dev->num_resources)
23                 platform_device_register(dev);
24         return 0;
25 }
26
27 int __init platform_add_devices(struct platform_device **devs, int num)
28 {
29         int i;
30
31         for (i = 0; i < num; i++)
32                 platform_add_device(devs[i]);
33
34         return 0;
35 }