blob: 28186b6f2c0962780b6bb794d85dc283e79ba361 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001
2struct lm_device {
3 struct device dev;
4 struct resource resource;
5 unsigned int irq;
6 unsigned int id;
7};
8
9struct lm_driver {
10 struct device_driver drv;
11 int (*probe)(struct lm_device *);
12 void (*remove)(struct lm_device *);
13 int (*suspend)(struct lm_device *, pm_message_t);
14 int (*resume)(struct lm_device *);
15};
16
17int lm_driver_register(struct lm_driver *drv);
18void lm_driver_unregister(struct lm_driver *drv);
19
20int lm_device_register(struct lm_device *dev);
21
22#define lm_get_drvdata(lm) dev_get_drvdata(&(lm)->dev)
23#define lm_set_drvdata(lm,d) dev_set_drvdata(&(lm)->dev, d)