Skip to contentSkip to conversation

MISC: convert drivers/misc/* to use module_platform_driver()

PATCH In review Axel Lin 3 participants 5 messages Jan 22, 2012 – Jan 23, 2012

Subsystems (2)
lore
Share & tools
lore

Axel Lin

author
#0 lore raw

PATCH 1/3 MISC: convert drivers/misc/* to use module_platform_driver()

This patch converts the drivers in drivers/misc/* to use the module_platform_driver() macro which makes the code smaller and a bit simpler.

---
 drivers/misc/carma/carma-fpga.c      |   17 +----------------
 drivers/misc/max8997-muic.c          |   12 +-----------
 drivers/misc/spear13xx_pcie_gadget.c |   12 +-----------
 drivers/misc/ti-st/st_kim.c          |   13 +------------
 4 files changed, 4 insertions(+), 50 deletions(-)
drivers/misc/carma/carma-fpga.c +1 -16
index 14e974b2..366bc15 100644
@@ -1410,23 +1410,8 @@ static struct platform_driver data_of_driver = {
 	},
 };
 
-/*
- * Module Init / Exit
- */
-
-static int __init data_init(void)
-{
-	return platform_driver_register(&data_of_driver);
-}
-
-static void __exit data_exit(void)
-{
-	platform_driver_unregister(&data_of_driver);
-}
+module_platform_driver(data_of_driver);
 
 MODULE_AUTHOR("Ira W. Snyder <[email protected]>");
 MODULE_DESCRIPTION("CARMA DATA-FPGA Access Driver");
 MODULE_LICENSE("GPL");
-
-module_init(data_init);
-module_exit(data_exit);
drivers/misc/max8997-muic.c +1 -11
index d74ef41..19591ea 100644
@@ -488,17 +488,7 @@ static struct platform_driver max8997_muic_driver = {
 	.remove		= __devexit_p(max8997_muic_remove),
 };
 
-static int __init max8997_muic_init(void)
-{
-	return platform_driver_register(&max8997_muic_driver);
-}
-module_init(max8997_muic_init);
-
-static void __exit max8997_muic_exit(void)
-{
-	platform_driver_unregister(&max8997_muic_driver);
-}
-module_exit(max8997_muic_exit);
+module_platform_driver(max8997_muic_driver);
 
 MODULE_DESCRIPTION("Maxim MAX8997 MUIC driver");
 MODULE_AUTHOR("Donggeun Kim <[email protected]>");
drivers/misc/spear13xx_pcie_gadget.c +1 -11
index 43d073b..123ed98 100644
@@ -891,17 +891,7 @@ static struct platform_driver spear_pcie_gadget_driver = {
 	},
 };
 
-static int __init spear_pcie_gadget_init(void)
-{
-	return platform_driver_register(&spear_pcie_gadget_driver);
-}
-module_init(spear_pcie_gadget_init);
-
-static void __exit spear_pcie_gadget_exit(void)
-{
-	platform_driver_unregister(&spear_pcie_gadget_driver);
-}
-module_exit(spear_pcie_gadget_exit);
+module_platform_driver(spear_pcie_gadget_driver);
 
 MODULE_ALIAS("platform:pcie-gadget-spear");
 MODULE_AUTHOR("Pratyush Anand");
drivers/misc/ti-st/st_kim.c +1 -12
index a7a861c..7c14f8f 100644
@@ -837,19 +837,8 @@ static struct platform_driver kim_platform_driver = {
 	},
 };
 
-static int __init st_kim_init(void)
-{
-	return platform_driver_register(&kim_platform_driver);
-}
-
-static void __exit st_kim_deinit(void)
-{
-	platform_driver_unregister(&kim_platform_driver);
-}
-
+module_platform_driver(kim_platform_driver);
 
-module_init(st_kim_init);
-module_exit(st_kim_deinit);
 MODULE_AUTHOR("Pavan Savoy <[email protected]>");
 MODULE_DESCRIPTION("Shared Transport Driver for TI BT/FM/GPS combo chips ");
 MODULE_LICENSE("GPL");
Signature · 1 line
1.7.5.4
author
#1 lore raw

PATCH 2/3 MISC: convert drivers/misc/* to use module_i2c_driver()

This patch converts the drivers in drivers/misc/* to use the module_i2c_driver() macro which makes the code smaller and a bit simpler.

Cc Michael Hennerich <[email protected]>
Cc Anantha Narayanan <[email protected]>
Cc Hemanth V <[email protected]>
Cc Christoph Mair <[email protected]>
Cc Grant Likely <[email protected]>
Cc Ben Gardner <[email protected]>
Cc Minkyu Kang <[email protected]>
Cc Kalhan Trisal <[email protected]>
Cc Darrick J. Wong <[email protected]>
Cc Daniel Mack <[email protected]>
Cc Rodolfo Giometti <[email protected]>
---
 drivers/misc/ad525x_dpot-i2c.c         |   12 +-----------
 drivers/misc/apds9802als.c             |   12 +-----------
 drivers/misc/apds990x.c                |   13 +------------
 drivers/misc/bh1770glc.c               |   13 +------------
 drivers/misc/bh1780gli.c               |   15 ++-------------
 drivers/misc/bmp085.c                  |   14 +-------------
 drivers/misc/ds1682.c                  |   13 +------------
 drivers/misc/eeprom/eeprom.c           |   14 +-------------
 drivers/misc/eeprom/max6875.c          |   14 +-------------
 drivers/misc/fsa9480.c                 |   12 +-----------
 drivers/misc/hmc6352.c                 |   13 +------------
 drivers/misc/ics932s401.c              |   13 +------------
 drivers/misc/isl29003.c                |   14 +-------------
 drivers/misc/isl29020.c                |   13 +------------
 drivers/misc/lis3lv02d/lis3lv02d_i2c.c |   13 +------------
 drivers/misc/tsl2550.c                 |   13 +------------
 16 files changed, 17 insertions(+), 194 deletions(-)
drivers/misc/ad525x_dpot-i2c.c +1 -11
index 83adab6..8208262 100644
@@ -113,17 +113,7 @@ static struct i2c_driver ad_dpot_i2c_driver = {
 	.id_table	= ad_dpot_id,
 };
 
-static int __init ad_dpot_i2c_init(void)
-{
-	return i2c_add_driver(&ad_dpot_i2c_driver);
-}
-module_init(ad_dpot_i2c_init);
-
-static void __exit ad_dpot_i2c_exit(void)
-{
-	i2c_del_driver(&ad_dpot_i2c_driver);
-}
-module_exit(ad_dpot_i2c_exit);
+module_i2c_driver(ad_dpot_i2c_driver);
 
 MODULE_AUTHOR("Michael Hennerich <[email protected]>");
 MODULE_DESCRIPTION("digital potentiometer I2C bus driver");
drivers/misc/apds9802als.c +1 -11
index 81db781..0314773 100644
@@ -332,17 +332,7 @@ static struct i2c_driver apds9802als_driver = {
 	.id_table = apds9802als_id,
 };
 
-static int __init sensor_apds9802als_init(void)
-{
-	return i2c_add_driver(&apds9802als_driver);
-}
-
-static void  __exit sensor_apds9802als_exit(void)
-{
-	i2c_del_driver(&apds9802als_driver);
-}
-module_init(sensor_apds9802als_init);
-module_exit(sensor_apds9802als_exit);
+module_i2c_driver(apds9802als_driver);
 
 MODULE_AUTHOR("Anantha Narayanan <[email protected]");
 MODULE_DESCRIPTION("Avago apds9802als ALS Driver");
drivers/misc/apds990x.c +1 -12
index e2a52e5..ee74244 100644
@@ -1279,19 +1279,8 @@ static struct i2c_driver apds990x_driver = {
 	.id_table = apds990x_id,
 };
 
-static int __init apds990x_init(void)
-{
-	return i2c_add_driver(&apds990x_driver);
-}
-
-static void __exit apds990x_exit(void)
-{
-	i2c_del_driver(&apds990x_driver);
-}
+module_i2c_driver(apds990x_driver);
 
 MODULE_DESCRIPTION("APDS990X combined ALS and proximity sensor");
 MODULE_AUTHOR("Samu Onkalo, Nokia Corporation");
 MODULE_LICENSE("GPL v2");
-
-module_init(apds990x_init);
-module_exit(apds990x_exit);
drivers/misc/bh1770glc.c +1 -12
index d79a972..3d56ae7 100644
@@ -1399,19 +1399,8 @@ static struct i2c_driver bh1770_driver = {
 	.id_table = bh1770_id,
 };
 
-static int __init bh1770_init(void)
-{
-	return i2c_add_driver(&bh1770_driver);
-}
-
-static void __exit bh1770_exit(void)
-{
-	i2c_del_driver(&bh1770_driver);
-}
+module_i2c_driver(bh1770_driver);
 
 MODULE_DESCRIPTION("BH1770GLC / SFH7770 combined ALS and proximity sensor");
 MODULE_AUTHOR("Samu Onkalo, Nokia Corporation");
 MODULE_LICENSE("GPL v2");
-
-module_init(bh1770_init);
-module_exit(bh1770_exit);
drivers/misc/bh1780gli.c +2 -13
index bfeea9b..54f6f39 100644
@@ -253,21 +253,10 @@ static struct i2c_driver bh1780_driver = {
 	.driver = {
 		.name = "bh1780",
 		.pm	= BH1780_PMOPS,
-},
+	},
 };
 
-static int __init bh1780_init(void)
-{
-	return i2c_add_driver(&bh1780_driver);
-}
-
-static void __exit bh1780_exit(void)
-{
-	i2c_del_driver(&bh1780_driver);
-}
-
-module_init(bh1780_init)
-module_exit(bh1780_exit)
+module_i2c_driver(bh1780_driver);
 
 MODULE_DESCRIPTION("BH1780GLI Ambient Light Sensor Driver");
 MODULE_LICENSE("GPL");
drivers/misc/bmp085.c +1 -13
index b29a2be..3c534ab 100644
@@ -464,20 +464,8 @@ static struct i2c_driver bmp085_driver = {
 	.address_list	= normal_i2c
 };
 
-static int __init bmp085_init(void)
-{
-	return i2c_add_driver(&bmp085_driver);
-}
-
-static void __exit bmp085_exit(void)
-{
-	i2c_del_driver(&bmp085_driver);
-}
-
+module_i2c_driver(bmp085_driver);
 
 MODULE_AUTHOR("Christoph Mair <[email protected]");
 MODULE_DESCRIPTION("BMP085 driver");
 MODULE_LICENSE("GPL");
-
-module_init(bmp085_init);
-module_exit(bmp085_exit);
drivers/misc/ds1682.c +1 -12
index a513f0a..154b02e 100644
@@ -250,19 +250,8 @@ static struct i2c_driver ds1682_driver = {
 	.id_table = ds1682_id,
 };
 
-static int __init ds1682_init(void)
-{
-	return i2c_add_driver(&ds1682_driver);
-}
-
-static void __exit ds1682_exit(void)
-{
-	i2c_del_driver(&ds1682_driver);
-}
+module_i2c_driver(ds1682_driver);
 
 MODULE_AUTHOR("Grant Likely <[email protected]>");
 MODULE_DESCRIPTION("DS1682 Elapsed Time Indicator driver");
 MODULE_LICENSE("GPL");
-
-module_init(ds1682_init);
-module_exit(ds1682_exit);
drivers/misc/eeprom/eeprom.c +1 -13
index 45060dd..c169e07 100644
@@ -229,22 +229,10 @@ static struct i2c_driver eeprom_driver = {
 	.address_list	= normal_i2c,
 };
 
-static int __init eeprom_init(void)
-{
-	return i2c_add_driver(&eeprom_driver);
-}
-
-static void __exit eeprom_exit(void)
-{
-	i2c_del_driver(&eeprom_driver);
-}
-
+module_i2c_driver(eeprom_driver);
 
 MODULE_AUTHOR("Frodo Looijaard <[email protected]> and "
 		"Philip Edelbrock <[email protected]> and "
 		"Greg Kroah-Hartman <[email protected]>");
 MODULE_DESCRIPTION("I2C EEPROM driver");
 MODULE_LICENSE("GPL");
-
-module_init(eeprom_init);
-module_exit(eeprom_exit);
drivers/misc/eeprom/max6875.c +1 -13
index 5653a3c..e36157d 100644
@@ -208,20 +208,8 @@ static struct i2c_driver max6875_driver = {
 	.id_table	= max6875_id,
 };
 
-static int __init max6875_init(void)
-{
-	return i2c_add_driver(&max6875_driver);
-}
-
-static void __exit max6875_exit(void)
-{
-	i2c_del_driver(&max6875_driver);
-}
-
+module_i2c_driver(max6875_driver);
 
 MODULE_AUTHOR("Ben Gardner <[email protected]>");
 MODULE_DESCRIPTION("MAX6875 driver");
 MODULE_LICENSE("GPL");
-
-module_init(max6875_init);
-module_exit(max6875_exit);
drivers/misc/fsa9480.c +1 -11
index f6586d5..483d6b7 100644
@@ -541,17 +541,7 @@ static struct i2c_driver fsa9480_i2c_driver = {
 	.id_table = fsa9480_id,
 };
 
-static int __init fsa9480_init(void)
-{
-	return i2c_add_driver(&fsa9480_i2c_driver);
-}
-module_init(fsa9480_init);
-
-static void __exit fsa9480_exit(void)
-{
-	i2c_del_driver(&fsa9480_i2c_driver);
-}
-module_exit(fsa9480_exit);
+module_i2c_driver(fsa9480_i2c_driver);
 
 MODULE_AUTHOR("Minkyu Kang <[email protected]>");
 MODULE_DESCRIPTION("FSA9480 USB Switch driver");
drivers/misc/hmc6352.c +1 -12
index ca938fc..423cd40 100644
@@ -148,18 +148,7 @@ static struct i2c_driver hmc6352_driver = {
 	.id_table = hmc6352_id,
 };
 
-static int __init sensor_hmc6352_init(void)
-{
-	return i2c_add_driver(&hmc6352_driver);
-}
-
-static void  __exit sensor_hmc6352_exit(void)
-{
-	i2c_del_driver(&hmc6352_driver);
-}
-
-module_init(sensor_hmc6352_init);
-module_exit(sensor_hmc6352_exit);
+module_i2c_driver(hmc6352_driver);
 
 MODULE_AUTHOR("Kalhan Trisal <[email protected]");
 MODULE_DESCRIPTION("hmc6352 Compass Driver");
drivers/misc/ics932s401.c +1 -12
index 152e9d9..0029536 100644
@@ -480,23 +480,12 @@ static int ics932s401_remove(struct i2c_client *client)
 	return 0;
 }
 
-static int __init ics932s401_init(void)
-{
-	return i2c_add_driver(&ics932s401_driver);
-}
-
-static void __exit ics932s401_exit(void)
-{
-	i2c_del_driver(&ics932s401_driver);
-}
+module_i2c_driver(ics932s401_driver);
 
 MODULE_AUTHOR("Darrick J. Wong <[email protected]>");
 MODULE_DESCRIPTION("ICS932S401 driver");
 MODULE_LICENSE("GPL");
 
-module_init(ics932s401_init);
-module_exit(ics932s401_exit);
-
 /* IBM IntelliStation Z30 */
 MODULE_ALIAS("dmi:bvnIBM:*:rn9228:*");
 MODULE_ALIAS("dmi:bvnIBM:*:rn9232:*");
drivers/misc/isl29003.c +1 -13
index a71e245..eb5de2e 100644
@@ -455,21 +455,9 @@ static struct i2c_driver isl29003_driver = {
 	.id_table = isl29003_id,
 };
 
-static int __init isl29003_init(void)
-{
-	return i2c_add_driver(&isl29003_driver);
-}
-
-static void __exit isl29003_exit(void)
-{
-	i2c_del_driver(&isl29003_driver);
-}
+module_i2c_driver(isl29003_driver);
 
 MODULE_AUTHOR("Daniel Mack <[email protected]>");
 MODULE_DESCRIPTION("ISL29003 ambient light sensor driver");
 MODULE_LICENSE("GPL v2");
 MODULE_VERSION(DRIVER_VERSION);
-
-module_init(isl29003_init);
-module_exit(isl29003_exit);
-
drivers/misc/isl29020.c +1 -12
index 3d6cce6..0aa08c7 100644
@@ -230,18 +230,7 @@ static struct i2c_driver isl29020_driver = {
 	.id_table = isl29020_id,
 };
 
-static int __init sensor_isl29020_init(void)
-{
-	return i2c_add_driver(&isl29020_driver);
-}
-
-static void  __exit sensor_isl29020_exit(void)
-{
-	i2c_del_driver(&isl29020_driver);
-}
-
-module_init(sensor_isl29020_init);
-module_exit(sensor_isl29020_exit);
+module_i2c_driver(isl29020_driver);
 
 MODULE_AUTHOR("Kalhan Trisal <[email protected]>");
 MODULE_DESCRIPTION("Intersil isl29020 ALS Driver");
drivers/misc/lis3lv02d/lis3lv02d_i2c.c +1 -12
index c02fea0..e8c0019 100644
@@ -256,19 +256,8 @@ static struct i2c_driver lis3lv02d_i2c_driver = {
 	.id_table = lis3lv02d_id,
 };
 
-static int __init lis3lv02d_init(void)
-{
-	return i2c_add_driver(&lis3lv02d_i2c_driver);
-}
-
-static void __exit lis3lv02d_exit(void)
-{
-	i2c_del_driver(&lis3lv02d_i2c_driver);
-}
+module_i2c_driver(lis3lv02d_i2c_driver);
 
 MODULE_AUTHOR("Nokia Corporation");
 MODULE_DESCRIPTION("lis3lv02d I2C interface");
 MODULE_LICENSE("GPL");
-
-module_init(lis3lv02d_init);
-module_exit(lis3lv02d_exit);
drivers/misc/tsl2550.c +1 -12
index 483ae5f..0beb298 100644
@@ -454,20 +454,9 @@ static struct i2c_driver tsl2550_driver = {
 	.id_table = tsl2550_id,
 };
 
-static int __init tsl2550_init(void)
-{
-	return i2c_add_driver(&tsl2550_driver);
-}
-
-static void __exit tsl2550_exit(void)
-{
-	i2c_del_driver(&tsl2550_driver);
-}
+module_i2c_driver(tsl2550_driver);
 
 MODULE_AUTHOR("Rodolfo Giometti <[email protected]>");
 MODULE_DESCRIPTION("TSL2550 ambient light sensor driver");
 MODULE_LICENSE("GPL");
 MODULE_VERSION(DRIVER_VERSION);
-
-module_init(tsl2550_init);
-module_exit(tsl2550_exit);
Signature · 1 line
1.7.5.4
author
#2 lore raw

PATCH 3/3 MISC: convert drivers/misc/* to use module_spi_driver()

In reply to Axel Lin

This patch converts the drivers in drivers/misc/* to use the module_spi_driver() macro which makes the code smaller and a bit simpler.

Cc Michael Hennerich <[email protected]>
Cc Anatolij Gustschin <[email protected]>
Cc Daniel Mack <[email protected]>
---
 drivers/misc/ad525x_dpot-spi.c         |   12 +-----------
 drivers/misc/eeprom/at25.c             |   12 +-----------
 drivers/misc/eeprom/eeprom_93xx46.c    |   12 +-----------
 drivers/misc/lis3lv02d/lis3lv02d_spi.c |   13 +------------
 drivers/misc/ti_dac7512.c              |   13 +------------
 5 files changed, 5 insertions(+), 57 deletions(-)
drivers/misc/ad525x_dpot-spi.c +1 -11
index 822749e..f623175 100644
@@ -135,17 +135,7 @@ static struct spi_driver ad_dpot_spi_driver = {
 	.id_table	= ad_dpot_spi_id,
 };
 
-static int __init ad_dpot_spi_init(void)
-{
-	return spi_register_driver(&ad_dpot_spi_driver);
-}
-module_init(ad_dpot_spi_init);
-
-static void __exit ad_dpot_spi_exit(void)
-{
-	spi_unregister_driver(&ad_dpot_spi_driver);
-}
-module_exit(ad_dpot_spi_exit);
+module_spi_driver(ad_dpot_spi_driver);
 
 MODULE_AUTHOR("Michael Hennerich <[email protected]>");
 MODULE_DESCRIPTION("digital potentiometer SPI bus driver");
drivers/misc/eeprom/at25.c +1 -11
index c627e41..01ab3c9 100644
@@ -405,17 +405,7 @@ static struct spi_driver at25_driver = {
 	.remove		= __devexit_p(at25_remove),
 };
 
-static int __init at25_init(void)
-{
-	return spi_register_driver(&at25_driver);
-}
-module_init(at25_init);
-
-static void __exit at25_exit(void)
-{
-	spi_unregister_driver(&at25_driver);
-}
-module_exit(at25_exit);
+module_spi_driver(at25_driver);
 
 MODULE_DESCRIPTION("Driver for most SPI EEPROMs");
 MODULE_AUTHOR("David Brownell");
drivers/misc/eeprom/eeprom_93xx46.c +1 -11
index 0c7ebb1..ce3fe36 100644
@@ -392,17 +392,7 @@ static struct spi_driver eeprom_93xx46_driver = {
 	.remove		= __devexit_p(eeprom_93xx46_remove),
 };
 
-static int __init eeprom_93xx46_init(void)
-{
-	return spi_register_driver(&eeprom_93xx46_driver);
-}
-module_init(eeprom_93xx46_init);
-
-static void __exit eeprom_93xx46_exit(void)
-{
-	spi_unregister_driver(&eeprom_93xx46_driver);
-}
-module_exit(eeprom_93xx46_exit);
+module_spi_driver(eeprom_93xx46_driver);
 
 MODULE_LICENSE("GPL");
 MODULE_DESCRIPTION("Driver for 93xx46 EEPROMs");
drivers/misc/lis3lv02d/lis3lv02d_spi.c +1 -12
index b2c1be1..80880e9 100644
@@ -126,18 +126,7 @@ static struct spi_driver lis302dl_spi_driver = {
 	.remove	= __devexit_p(lis302dl_spi_remove),
 };
 
-static int __init lis302dl_init(void)
-{
-	return spi_register_driver(&lis302dl_spi_driver);
-}
-
-static void __exit lis302dl_exit(void)
-{
-	spi_unregister_driver(&lis302dl_spi_driver);
-}
-
-module_init(lis302dl_init);
-module_exit(lis302dl_exit);
+module_spi_driver(lis302dl_spi_driver);
 
 MODULE_AUTHOR("Daniel Mack <[email protected]>");
 MODULE_DESCRIPTION("lis3lv02d SPI glue layer");
drivers/misc/ti_dac7512.c +1 -12
index d3f229a..5acbba1 100644
@@ -82,20 +82,9 @@ static struct spi_driver dac7512_driver = {
 	.remove	= __devexit_p(dac7512_remove),
 };
 
-static int __init dac7512_init(void)
-{
-	return spi_register_driver(&dac7512_driver);
-}
-
-static void __exit dac7512_exit(void)
-{
-	spi_unregister_driver(&dac7512_driver);
-}
+module_spi_driver(dac7512_driver);
 
 MODULE_AUTHOR("Daniel Mack <[email protected]>");
 MODULE_DESCRIPTION("DAC7512 16-bit DAC");
 MODULE_LICENSE("GPL v2");
 MODULE_VERSION(DRIVER_VERSION);
-
-module_init(dac7512_init);
-module_exit(dac7512_exit);
Signature · 1 line
1.7.5.4
Acked-by on v1 1/3
#3 lore raw
In reply to Axel Lin
Quoted 108 lines · Axel Lin

This patch converts the drivers in drivers/misc/* to use the module_platform_driver() macro which makes the code smaller and a bit simpler.

---
  drivers/misc/carma/carma-fpga.c      |   17 +----------------
  drivers/misc/max8997-muic.c          |   12 +-----------
  drivers/misc/spear13xx_pcie_gadget.c |   12 +-----------
  drivers/misc/ti-st/st_kim.c          |   13 +------------
  4 files changed, 4 insertions(+), 50 deletions(-)
drivers/misc/carma/carma-fpga.c +1 -16
index 14e974b2..366bc15 100644
@@ -1410,23 +1410,8 @@ static struct platform_driver data_of_driver = {
  	},
  };
 
-/*
- * Module Init / Exit
- */
-
-static int __init data_init(void)
-{
-	return platform_driver_register(&data_of_driver);
-}
-
-static void __exit data_exit(void)
-{
-	platform_driver_unregister(&data_of_driver);
-}
+module_platform_driver(data_of_driver);
 
  MODULE_AUTHOR("Ira W. Snyder<[email protected]>");
  MODULE_DESCRIPTION("CARMA DATA-FPGA Access Driver");
  MODULE_LICENSE("GPL");
-
-module_init(data_init);
-module_exit(data_exit);
drivers/misc/max8997-muic.c +1 -11
index d74ef41..19591ea 100644
@@ -488,17 +488,7 @@ static struct platform_driver max8997_muic_driver = {
  	.remove		= __devexit_p(max8997_muic_remove),
  };
 
-static int __init max8997_muic_init(void)
-{
-	return platform_driver_register(&max8997_muic_driver);
-}
-module_init(max8997_muic_init);
-
-static void __exit max8997_muic_exit(void)
-{
-	platform_driver_unregister(&max8997_muic_driver);
-}
-module_exit(max8997_muic_exit);
+module_platform_driver(max8997_muic_driver);
 
  MODULE_DESCRIPTION("Maxim MAX8997 MUIC driver");
  MODULE_AUTHOR("Donggeun Kim<[email protected]>");
drivers/misc/spear13xx_pcie_gadget.c +1 -11
index 43d073b..123ed98 100644
@@ -891,17 +891,7 @@ static struct platform_driver spear_pcie_gadget_driver = {
  	},
  };
 
-static int __init spear_pcie_gadget_init(void)
-{
-	return platform_driver_register(&spear_pcie_gadget_driver);
-}
-module_init(spear_pcie_gadget_init);
-
-static void __exit spear_pcie_gadget_exit(void)
-{
-	platform_driver_unregister(&spear_pcie_gadget_driver);
-}
-module_exit(spear_pcie_gadget_exit);
+module_platform_driver(spear_pcie_gadget_driver);
 
  MODULE_ALIAS("platform:pcie-gadget-spear");
  MODULE_AUTHOR("Pratyush Anand");
drivers/misc/ti-st/st_kim.c +0 -7
index a7a861c..7c14f8f 100644
@@ -837,19 +837,8 @@ static struct platform_driver kim_platform_driver = {
  	},
  };
 
-static int __init st_kim_init(void)
-{
-	return platform_driver_register(&kim_platform_driver);
-}
-
-static void __exit st_kim_deinit(void)
-{

drivers/misc/ti-st/st_kim.c static struct platform_driver kim_platform_driver = { · line 844

Quoted 10 lines
drivers/misc/ti-st/st_kim.c +1 -5
-	platform_driver_unregister(&kim_platform_driver);
-}
-
+module_platform_driver(kim_platform_driver);
 
-module_init(st_kim_init);
-module_exit(st_kim_deinit);
  MODULE_AUTHOR("Pavan Savoy<[email protected]>");
  MODULE_DESCRIPTION("Shared Transport Driver for TI BT/FM/GPS combo chips ");
  MODULE_LICENSE("GPL");
Acked-by on v1 1/3
#4 lore raw
In reply to Axel Lin
Quoted 37 lines · Axel Lin

This patch converts the drivers in drivers/misc/* to use the module_platform_driver() macro which makes the code smaller and a bit simpler.

---
 drivers/misc/carma/carma-fpga.c      |   17 +----------------
 drivers/misc/max8997-muic.c          |   12 +-----------
 drivers/misc/spear13xx_pcie_gadget.c |   12 +-----------
 drivers/misc/ti-st/st_kim.c          |   13 +------------
 4 files changed, 4 insertions(+), 50 deletions(-)
drivers/misc/carma/carma-fpga.c +0 -11
index 14e974b2..366bc15 100644
@@ -1410,23 +1410,8 @@ static struct platform_driver data_of_driver = {
 	},
 };
 
-/*
- * Module Init / Exit
- */
-
-static int __init data_init(void)
-{
-	return platform_driver_register(&data_of_driver);
-}
-
-static void __exit data_exit(void)
-{

drivers/misc/carma/carma-fpga.c static struct platform_driver data_of_driver = { · line 1432

Quoted 10 lines
drivers/misc/carma/carma-fpga.c +1 -5
-	platform_driver_unregister(&data_of_driver);
-}
+module_platform_driver(data_of_driver);
 
 MODULE_AUTHOR("Ira W. Snyder <[email protected]>");
 MODULE_DESCRIPTION("CARMA DATA-FPGA Access Driver");
 MODULE_LICENSE("GPL");
-
-module_init(data_init);
-module_exit(data_exit);

Looks great.

Quoted 76 lines
drivers/misc/max8997-muic.c +1 -11
index d74ef41..19591ea 100644
@@ -488,17 +488,7 @@ static struct platform_driver max8997_muic_driver = {
 	.remove		= __devexit_p(max8997_muic_remove),
 };
 
-static int __init max8997_muic_init(void)
-{
-	return platform_driver_register(&max8997_muic_driver);
-}
-module_init(max8997_muic_init);
-
-static void __exit max8997_muic_exit(void)
-{
-	platform_driver_unregister(&max8997_muic_driver);
-}
-module_exit(max8997_muic_exit);
+module_platform_driver(max8997_muic_driver);
 
 MODULE_DESCRIPTION("Maxim MAX8997 MUIC driver");
 MODULE_AUTHOR("Donggeun Kim <[email protected]>");
drivers/misc/spear13xx_pcie_gadget.c +1 -11
index 43d073b..123ed98 100644
@@ -891,17 +891,7 @@ static struct platform_driver spear_pcie_gadget_driver = {
 	},
 };
 
-static int __init spear_pcie_gadget_init(void)
-{
-	return platform_driver_register(&spear_pcie_gadget_driver);
-}
-module_init(spear_pcie_gadget_init);
-
-static void __exit spear_pcie_gadget_exit(void)
-{
-	platform_driver_unregister(&spear_pcie_gadget_driver);
-}
-module_exit(spear_pcie_gadget_exit);
+module_platform_driver(spear_pcie_gadget_driver);
 
 MODULE_ALIAS("platform:pcie-gadget-spear");
 MODULE_AUTHOR("Pratyush Anand");
drivers/misc/ti-st/st_kim.c +1 -12
index a7a861c..7c14f8f 100644
@@ -837,19 +837,8 @@ static struct platform_driver kim_platform_driver = {
 	},
 };
 
-static int __init st_kim_init(void)
-{
-	return platform_driver_register(&kim_platform_driver);
-}
-
-static void __exit st_kim_deinit(void)
-{
-	platform_driver_unregister(&kim_platform_driver);
-}
-
+module_platform_driver(kim_platform_driver);
 
-module_init(st_kim_init);
-module_exit(st_kim_deinit);
 MODULE_AUTHOR("Pavan Savoy <[email protected]>");
 MODULE_DESCRIPTION("Shared Transport Driver for TI BT/FM/GPS combo chips ");
 MODULE_LICENSE("GPL");
Signature · 1 line
1.7.5.4