diff options
| author | Grant Likely <grant.likely@secretlab.ca> | 2011-10-05 11:29:49 -0600 | 
|---|---|---|
| committer | Grant Likely <grant.likely@secretlab.ca> | 2011-10-25 00:35:47 +0200 | 
| commit | 940ab88962bc1aff3273a8356d64577a6e386736 (patch) | |
| tree | 3d96d0cb30fd3c6e1b17b2a2d264f4d44258a3bb /drivers/spi/spi-davinci.c | |
| parent | 38ada214fad79ff5ebbed58932c5f0c9969d9c91 (diff) | |
| download | olio-linux-3.10-940ab88962bc1aff3273a8356d64577a6e386736.tar.xz olio-linux-3.10-940ab88962bc1aff3273a8356d64577a6e386736.zip  | |
drivercore: Add helper macro for platform_driver boilerplate
For simple modules that contain a single platform_driver without any
additional setup code then ends up being a block of duplicated
boilerplate.  This patch adds a new macro, module_platform_driver(),
which replaces the module_init()/module_exit() registrations with
template functions.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Reviewed-by: Magnus Damm <magnus.damm@gmail.com>
Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Reviewed-by: Stephen Boyd <sboyd@codeaurora.org>
Diffstat (limited to 'drivers/spi/spi-davinci.c')
| -rw-r--r-- | drivers/spi/spi-davinci.c | 20 | 
1 files changed, 5 insertions, 15 deletions
diff --git a/drivers/spi/spi-davinci.c b/drivers/spi/spi-davinci.c index 1f0ed8005c9..31bfba805cf 100644 --- a/drivers/spi/spi-davinci.c +++ b/drivers/spi/spi-davinci.c @@ -799,7 +799,7 @@ rx_dma_failed:   * It will invoke spi_bitbang_start to create work queue so that client driver   * can register transfer method to work queue.   */ -static int davinci_spi_probe(struct platform_device *pdev) +static int __devinit davinci_spi_probe(struct platform_device *pdev)  {  	struct spi_master *master;  	struct davinci_spi *dspi; @@ -984,7 +984,7 @@ err:   * It will also call spi_bitbang_stop to destroy the work queue which was   * created by spi_bitbang_start.   */ -static int __exit davinci_spi_remove(struct platform_device *pdev) +static int __devexit davinci_spi_remove(struct platform_device *pdev)  {  	struct davinci_spi *dspi;  	struct spi_master *master; @@ -1011,20 +1011,10 @@ static struct platform_driver davinci_spi_driver = {  		.name = "spi_davinci",  		.owner = THIS_MODULE,  	}, -	.remove = __exit_p(davinci_spi_remove), +	.probe = davinci_spi_probe, +	.remove = __devexit_p(davinci_spi_remove),  }; - -static int __init davinci_spi_init(void) -{ -	return platform_driver_probe(&davinci_spi_driver, davinci_spi_probe); -} -module_init(davinci_spi_init); - -static void __exit davinci_spi_exit(void) -{ -	platform_driver_unregister(&davinci_spi_driver); -} -module_exit(davinci_spi_exit); +module_platform_driver(davinci_spi_driver);  MODULE_DESCRIPTION("TI DaVinci SPI Master Controller Driver");  MODULE_LICENSE("GPL");  |