struct lm_device { | |
struct device dev; | |
struct resource resource; | |
unsigned int irq; | |
unsigned int id; | |
}; | |
struct lm_driver { | |
struct device_driver drv; | |
int (*probe)(struct lm_device *); | |
void (*remove)(struct lm_device *); | |
int (*suspend)(struct lm_device *, pm_message_t); | |
int (*resume)(struct lm_device *); | |
}; | |
int lm_driver_register(struct lm_driver *drv); | |
void lm_driver_unregister(struct lm_driver *drv); | |
int lm_device_register(struct lm_device *dev); | |
#define lm_get_drvdata(lm) dev_get_drvdata(&(lm)->dev) | |
#define lm_set_drvdata(lm,d) dev_set_drvdata(&(lm)->dev, d) |