X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=include%2Flinux%2Fplatform_device.h;h=782090c689322bec205fc7fb969f3ed23a2fd89c;hb=52e92e5788139921352213fa6faf6e30ff1f2f5a;hp=1a165b7ae01b5889b154133b345a53c4a022f58b;hpb=ad8f76be48d817b48222411ae16a7dfe257bdb24;p=powerpc.git diff --git a/include/linux/platform_device.h b/include/linux/platform_device.h index 1a165b7ae0..782090c689 100644 --- a/include/linux/platform_device.h +++ b/include/linux/platform_device.h @@ -41,6 +41,22 @@ extern struct platform_device *platform_device_alloc(const char *name, unsigned extern int platform_device_add_resources(struct platform_device *pdev, struct resource *res, unsigned int num); extern int platform_device_add_data(struct platform_device *pdev, void *data, size_t size); extern int platform_device_add(struct platform_device *pdev); +extern void platform_device_del(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_ */