diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-11 18:24:26 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-11 18:24:26 +0100 |
commit | 5643f000c1e10ab991182478b76550e1364c3570 (patch) | |
tree | 950b2f61a5dd742de1c668ba968a9c8a99f1eab6 /include | |
parent | [PATCH] ipmi: fix inconsistent spinlock usage (diff) | |
parent | [DRIVER MODEL] Convert platform drivers to use struct platform_driver (diff) | |
download | linux-5643f000c1e10ab991182478b76550e1364c3570.tar.xz linux-5643f000c1e10ab991182478b76550e1364c3570.zip |
Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/platform_device.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/linux/platform_device.h b/include/linux/platform_device.h index 1a165b7ae01b..17e336f40b47 100644 --- a/include/linux/platform_device.h +++ b/include/linux/platform_device.h @@ -43,4 +43,19 @@ extern int platform_device_add_data(struct platform_device *pdev, void *data, si extern int platform_device_add(struct platform_device *pdev); extern void platform_device_put(struct platform_device *pdev); +struct platform_driver { + int (*probe)(struct platform_device *); + int (*remove)(struct platform_device *); + void (*shutdown)(struct platform_device *); + int (*suspend)(struct platform_device *, pm_message_t state); + int (*resume)(struct platform_device *); + struct device_driver driver; +}; + +extern int platform_driver_register(struct platform_driver *); +extern void platform_driver_unregister(struct platform_driver *); + +#define platform_get_drvdata(_dev) dev_get_drvdata(&(_dev)->dev) +#define platform_set_drvdata(_dev,data) dev_set_drvdata(&(_dev)->dev, (data)) + #endif /* _PLATFORM_DEVICE_H_ */ |