Commit | Line | Data |
---|---|---|
f898f8db SR |
1 | #ifndef _LINUX_OF_DEVICE_H |
2 | #define _LINUX_OF_DEVICE_H | |
f898f8db | 3 | |
efb2e014 | 4 | #ifdef CONFIG_OF_DEVICE |
f898f8db SR |
5 | #include <linux/device.h> |
6 | #include <linux/of.h> | |
7 | #include <linux/mod_devicetable.h> | |
8 | ||
9 | #include <asm/of_device.h> | |
10 | ||
11 | #define to_of_device(d) container_of(d, struct of_device, dev) | |
12 | ||
f898f8db SR |
13 | extern const struct of_device_id *of_match_device( |
14 | const struct of_device_id *matches, const struct of_device *dev); | |
15 | ||
16 | extern struct of_device *of_dev_get(struct of_device *dev); | |
17 | extern void of_dev_put(struct of_device *dev); | |
18 | ||
19 | extern int of_device_register(struct of_device *ofdev); | |
20 | extern void of_device_unregister(struct of_device *ofdev); | |
21 | extern void of_release_dev(struct device *dev); | |
22 | ||
fec738dd JF |
23 | static inline void of_device_free(struct of_device *dev) |
24 | { | |
25 | of_release_dev(&dev->dev); | |
26 | } | |
27 | ||
09e67ca2 SR |
28 | extern ssize_t of_device_get_modalias(struct of_device *ofdev, |
29 | char *str, ssize_t len); | |
efb2e014 | 30 | #endif /* CONFIG_OF_DEVICE */ |
09e67ca2 | 31 | |
f898f8db | 32 | #endif /* _LINUX_OF_DEVICE_H */ |