diff options
Diffstat (limited to 'include/asm-powerpc/of_device.h')
-rw-r--r-- | include/asm-powerpc/of_device.h | 36 |
1 files changed, 3 insertions, 33 deletions
diff --git a/include/asm-powerpc/of_device.h b/include/asm-powerpc/of_device.h index c5c0b0b3cd52..a889b2005bf5 100644 --- a/include/asm-powerpc/of_device.h +++ b/include/asm-powerpc/of_device.h | |||
@@ -6,12 +6,6 @@ | |||
6 | #include <linux/mod_devicetable.h> | 6 | #include <linux/mod_devicetable.h> |
7 | #include <asm/prom.h> | 7 | #include <asm/prom.h> |
8 | 8 | ||
9 | /* | ||
10 | * The of_platform_bus_type is a bus type used by drivers that do not | ||
11 | * attach to a macio or similar bus but still use OF probing | ||
12 | * mechanism | ||
13 | */ | ||
14 | extern struct bus_type of_platform_bus_type; | ||
15 | 9 | ||
16 | /* | 10 | /* |
17 | * The of_device is a kind of "base class" that is a superset of | 11 | * The of_device is a kind of "base class" that is a superset of |
@@ -20,46 +14,22 @@ extern struct bus_type of_platform_bus_type; | |||
20 | */ | 14 | */ |
21 | struct of_device | 15 | struct of_device |
22 | { | 16 | { |
23 | struct device_node *node; /* OF device node */ | 17 | struct device_node *node; /* to be obsoleted */ |
24 | u64 dma_mask; /* DMA mask */ | 18 | u64 dma_mask; /* DMA mask */ |
25 | struct device dev; /* Generic device interface */ | 19 | struct device dev; /* Generic device interface */ |
26 | }; | 20 | }; |
27 | #define to_of_device(d) container_of(d, struct of_device, dev) | 21 | #define to_of_device(d) container_of(d, struct of_device, dev) |
28 | 22 | ||
23 | extern const struct of_device_id *of_match_node( | ||
24 | const struct of_device_id *matches, const struct device_node *node); | ||
29 | extern const struct of_device_id *of_match_device( | 25 | extern const struct of_device_id *of_match_device( |
30 | const struct of_device_id *matches, const struct of_device *dev); | 26 | const struct of_device_id *matches, const struct of_device *dev); |
31 | 27 | ||
32 | extern struct of_device *of_dev_get(struct of_device *dev); | 28 | extern struct of_device *of_dev_get(struct of_device *dev); |
33 | extern void of_dev_put(struct of_device *dev); | 29 | extern void of_dev_put(struct of_device *dev); |
34 | 30 | ||
35 | /* | ||
36 | * An of_platform_driver driver is attached to a basic of_device on | ||
37 | * the "platform bus" (of_platform_bus_type) | ||
38 | */ | ||
39 | struct of_platform_driver | ||
40 | { | ||
41 | char *name; | ||
42 | struct of_device_id *match_table; | ||
43 | struct module *owner; | ||
44 | |||
45 | int (*probe)(struct of_device* dev, const struct of_device_id *match); | ||
46 | int (*remove)(struct of_device* dev); | ||
47 | |||
48 | int (*suspend)(struct of_device* dev, pm_message_t state); | ||
49 | int (*resume)(struct of_device* dev); | ||
50 | int (*shutdown)(struct of_device* dev); | ||
51 | |||
52 | struct device_driver driver; | ||
53 | }; | ||
54 | #define to_of_platform_driver(drv) container_of(drv,struct of_platform_driver, driver) | ||
55 | |||
56 | extern int of_register_driver(struct of_platform_driver *drv); | ||
57 | extern void of_unregister_driver(struct of_platform_driver *drv); | ||
58 | extern int of_device_register(struct of_device *ofdev); | 31 | extern int of_device_register(struct of_device *ofdev); |
59 | extern void of_device_unregister(struct of_device *ofdev); | 32 | extern void of_device_unregister(struct of_device *ofdev); |
60 | extern struct of_device *of_platform_device_create(struct device_node *np, | ||
61 | const char *bus_id, | ||
62 | struct device *parent); | ||
63 | extern void of_release_dev(struct device *dev); | 33 | extern void of_release_dev(struct device *dev); |
64 | 34 | ||
65 | #endif /* __KERNEL__ */ | 35 | #endif /* __KERNEL__ */ |