fec738dd48
Extract generic of_device allocation code from of_platform_device_create() and move it into of_device.[ch], called of_device_alloc(). Also, there's now of_device_free() which puts the device node. This way, bus drivers that build on of_platform (like ibmebus will) can build upon this code instead of reinventing the wheel. Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
33 lines
897 B
C
33 lines
897 B
C
#ifndef _ASM_POWERPC_OF_DEVICE_H
|
|
#define _ASM_POWERPC_OF_DEVICE_H
|
|
#ifdef __KERNEL__
|
|
|
|
#include <linux/device.h>
|
|
#include <linux/of.h>
|
|
|
|
/*
|
|
* The of_device is a kind of "base class" that is a superset of
|
|
* struct device for use by devices attached to an OF node and
|
|
* probed using OF properties.
|
|
*/
|
|
struct of_device
|
|
{
|
|
struct device_node *node; /* to be obsoleted */
|
|
u64 dma_mask; /* DMA mask */
|
|
struct device dev; /* Generic device interface */
|
|
};
|
|
|
|
extern struct of_device *of_device_alloc(struct device_node *np,
|
|
const char *bus_id,
|
|
struct device *parent);
|
|
|
|
extern ssize_t of_device_get_modalias(struct of_device *ofdev,
|
|
char *str, ssize_t len);
|
|
extern int of_device_uevent(struct device *dev,
|
|
struct kobj_uevent_env *env);
|
|
|
|
/* This is just here during the transition */
|
|
#include <linux/of_device.h>
|
|
|
|
#endif /* __KERNEL__ */
|
|
#endif /* _ASM_POWERPC_OF_DEVICE_H */
|