diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2005-11-09 22:32:44 +0000 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2005-11-09 22:32:44 +0000 |
commit | 3ae5eaec1d2d9c0cf53745352e7d4b152810ba24 (patch) | |
tree | d8825be54cefb6ad6707478d719c8e30605bee7b /drivers/char/sonypi.c | |
parent | 00d3dcdd96646be6059cc21f2efa94c4edc1eda5 (diff) | |
download | linux-3ae5eaec1d2d9c0cf53745352e7d4b152810ba24.tar.bz2 |
[DRIVER MODEL] Convert platform drivers to use struct platform_driver
This allows us to eliminate the casts in the drivers, and eventually
remove the use of the device_driver function pointer methods for
platform device drivers.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/char/sonypi.c')
-rw-r--r-- | drivers/char/sonypi.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/drivers/char/sonypi.c b/drivers/char/sonypi.c index d05067dcea01..51a07370e636 100644 --- a/drivers/char/sonypi.c +++ b/drivers/char/sonypi.c @@ -1168,7 +1168,7 @@ static int sonypi_disable(void) #ifdef CONFIG_PM static int old_camera_power; -static int sonypi_suspend(struct device *dev, pm_message_t state) +static int sonypi_suspend(struct platform_device *dev, pm_message_t state) { old_camera_power = sonypi_device.camera_power; sonypi_disable(); @@ -1176,26 +1176,27 @@ static int sonypi_suspend(struct device *dev, pm_message_t state) return 0; } -static int sonypi_resume(struct device *dev) +static int sonypi_resume(struct platform_device *dev) { sonypi_enable(old_camera_power); return 0; } #endif -static void sonypi_shutdown(struct device *dev) +static void sonypi_shutdown(struct platform_device *dev) { sonypi_disable(); } -static struct device_driver sonypi_driver = { - .name = "sonypi", - .bus = &platform_bus_type, +static struct platform_driver sonypi_driver = { #ifdef CONFIG_PM .suspend = sonypi_suspend, .resume = sonypi_resume, #endif .shutdown = sonypi_shutdown, + .driver = { + .name = "sonypi", + }, }; static int __devinit sonypi_create_input_devices(void) @@ -1455,20 +1456,20 @@ static int __init sonypi_init(void) if (!dmi_check_system(sonypi_dmi_table)) return -ENODEV; - ret = driver_register(&sonypi_driver); + ret = platform_driver_register(&sonypi_driver); if (ret) return ret; ret = sonypi_probe(); if (ret) - driver_unregister(&sonypi_driver); + platform_driver_unregister(&sonypi_driver); return ret; } static void __exit sonypi_exit(void) { - driver_unregister(&sonypi_driver); + platform_driver_unregister(&sonypi_driver); sonypi_remove(); } |