Skip to contentSkip to conversation

power_supply: Convert power_supply i2c drivers to module_i2c_driver

PATCH In review Axel Lin 5 participants 5 messages Jan 21, 2012 – Mar 15, 2012

lore
Share & tools
lore

Axel Lin

author
#0 lore raw

PATCH 1/1 power_supply: Convert power_supply i2c drivers to module_i2c_driver

Factor out some boilerplate code for i2c driver registration into module_i2c_driver.

Cc Ryan Mallon <[email protected]>
Cc Woogyom Kim <[email protected]>
Cc Daniel Jeong <[email protected]>
Cc Minkyu Kang <[email protected]>
Cc MyungJoo Ham <[email protected]>
Cc Rhyland Klein <[email protected]>
Cc Peter Edwards <[email protected]>
---
 drivers/power/ds2782_battery.c   |   12 +-----------
 drivers/power/lp8727_charger.c   |   13 +------------
 drivers/power/max17040_battery.c |   12 +-----------
 drivers/power/max17042_battery.c |   12 +-----------
 drivers/power/sbs-battery.c      |   12 +-----------
 drivers/power/z2_battery.c       |   13 +------------
 6 files changed, 6 insertions(+), 68 deletions(-)
drivers/power/ds2782_battery.c +1 -11
index bfbce5d..6e3d76a 100644
@@ -404,17 +404,7 @@ static struct i2c_driver ds278x_battery_driver = {
 	.id_table	= ds278x_id,
 };
 
-static int __init ds278x_init(void)
-{
-	return i2c_add_driver(&ds278x_battery_driver);
-}
-module_init(ds278x_init);
-
-static void __exit ds278x_exit(void)
-{
-	i2c_del_driver(&ds278x_battery_driver);
-}
-module_exit(ds278x_exit);
+module_i2c_driver(ds278x_battery_driver);
 
 MODULE_AUTHOR("Ryan Mallon");
 MODULE_DESCRIPTION("Maxim/Dallas DS2782 Stand-Alone Fuel Gauage IC driver");
drivers/power/lp8727_charger.c +1 -12
index b15b575..30de637 100644
@@ -475,18 +475,7 @@ static struct i2c_driver lp8727_driver = {
 	.id_table = lp8727_ids,
 };
 
-static int __init lp8727_init(void)
-{
-	return i2c_add_driver(&lp8727_driver);
-}
-
-static void __exit lp8727_exit(void)
-{
-	i2c_del_driver(&lp8727_driver);
-}
-
-module_init(lp8727_init);
-module_exit(lp8727_exit);
+module_i2c_driver(lp8727_driver);
 
 MODULE_DESCRIPTION("National Semiconductor LP8727 charger driver");
 MODULE_AUTHOR
drivers/power/max17040_battery.c +1 -11
index 2f2f9a6..1c8dd0e 100644
@@ -291,17 +291,7 @@ static struct i2c_driver max17040_i2c_driver = {
 	.id_table	= max17040_id,
 };
 
-static int __init max17040_init(void)
-{
-	return i2c_add_driver(&max17040_i2c_driver);
-}
-module_init(max17040_init);
-
-static void __exit max17040_exit(void)
-{
-	i2c_del_driver(&max17040_i2c_driver);
-}
-module_exit(max17040_exit);
+module_i2c_driver(max17040_i2c_driver);
 
 MODULE_AUTHOR("Minkyu Kang <[email protected]>");
 MODULE_DESCRIPTION("MAX17040 Fuel Gauge");
drivers/power/max17042_battery.c +1 -11
index 86acee2..b2fd9e2 100644
@@ -288,17 +288,7 @@ static struct i2c_driver max17042_i2c_driver = {
 	.id_table	= max17042_id,
 };
 
-static int __init max17042_init(void)
-{
-	return i2c_add_driver(&max17042_i2c_driver);
-}
-module_init(max17042_init);
-
-static void __exit max17042_exit(void)
-{
-	i2c_del_driver(&max17042_i2c_driver);
-}
-module_exit(max17042_exit);
+module_i2c_driver(max17042_i2c_driver);
 
 MODULE_AUTHOR("MyungJoo Ham <[email protected]>");
 MODULE_DESCRIPTION("MAX17042 Fuel Gauge");
drivers/power/sbs-battery.c +1 -11
index 9ff8af0..4f05498 100644
@@ -853,17 +853,7 @@ static struct i2c_driver sbs_battery_driver = {
 	},
 };
 
-static int __init sbs_battery_init(void)
-{
-	return i2c_add_driver(&sbs_battery_driver);
-}
-module_init(sbs_battery_init);
-
-static void __exit sbs_battery_exit(void)
-{
-	i2c_del_driver(&sbs_battery_driver);
-}
-module_exit(sbs_battery_exit);
+module_i2c_driver(sbs_battery_driver);
 
 MODULE_DESCRIPTION("SBS battery monitor driver");
 MODULE_LICENSE("GPL");
drivers/power/z2_battery.c +1 -12
index 636ebb2..15c3fba 100644
@@ -317,18 +317,7 @@ static struct i2c_driver z2_batt_driver = {
 	.id_table	= z2_batt_id,
 };
 
-static int __init z2_batt_init(void)
-{
-	return i2c_add_driver(&z2_batt_driver);
-}
-
-static void __exit z2_batt_exit(void)
-{
-	i2c_del_driver(&z2_batt_driver);
-}
-
-module_init(z2_batt_init);
-module_exit(z2_batt_exit);
+module_i2c_driver(z2_batt_driver);
 
 MODULE_LICENSE("GPL");
 MODULE_AUTHOR("Peter Edwards <[email protected]>");
Signature · 1 line
1.7.5.4
Acked-by on v1 1/1
#1 lore raw
Quoted 33 lines · Axel Lin

Factor out some boilerplate code for i2c driver registration into module_i2c_driver.

Cc Ryan Mallon <[email protected]>
Cc Woogyom Kim <[email protected]>
Cc Daniel Jeong <[email protected]>
Cc Minkyu Kang <[email protected]>
Cc MyungJoo Ham <[email protected]>
Cc Rhyland Klein <[email protected]>
Cc Peter Edwards <[email protected]>
---
 drivers/power/ds2782_battery.c   |   12 +-----------
 drivers/power/lp8727_charger.c   |   13 +------------
 drivers/power/max17040_battery.c |   12 +-----------
 drivers/power/max17042_battery.c |   12 +-----------
 drivers/power/sbs-battery.c      |   12 +-----------
 drivers/power/z2_battery.c       |   13 +------------
 6 files changed, 6 insertions(+), 68 deletions(-)
drivers/power/ds2782_battery.c +0 -5
index bfbce5d..6e3d76a 100644
@@ -404,17 +404,7 @@ static struct i2c_driver ds278x_battery_driver = {
 	.id_table	= ds278x_id,
 };
 
-static int __init ds278x_init(void)
-{
-	return i2c_add_driver(&ds278x_battery_driver);
-}
-module_init(ds278x_init);

drivers/power/ds2782_battery.c static struct i2c_driver ds278x_battery_driver = { · line 410

Quoted 10 lines
drivers/power/ds2782_battery.c +1 -6
-
-static void __exit ds278x_exit(void)
-{
-	i2c_del_driver(&ds278x_battery_driver);
-}
-module_exit(ds278x_exit);
+module_i2c_driver(ds278x_battery_driver);
 
 MODULE_AUTHOR("Ryan Mallon");
 MODULE_DESCRIPTION("Maxim/Dallas DS2782 Stand-Alone Fuel Gauage IC driver");

For ds2782:

Acked-by on v1 1/1
#2 lore raw
In reply to Axel Lin

For lp8727_charger:

Thanks !

Best Regards,
Milo -

-----Original Message-----
From: Axel Lin [mailto:[email protected]]
Sent: Saturday, January 21, 2012 3:43 PM
To: [email protected]
Cc: Ryan Mallon; Kim, Milo; Jeong, Daniel; Minkyu Kang; MyungJoo Ham; Rhyland Klein; Peter Edwards; Anton Vorontsov
Subject: [PATCH] power_supply: Convert power_supply i2c drivers to module_i2c_driver

Factor out some boilerplate code for i2c driver registration into module_i2c_driver.

Cc Ryan Mallon <[email protected]>
Cc Woogyom Kim <[email protected]>
Cc Daniel Jeong <[email protected]>
Cc Minkyu Kang <[email protected]>
Cc MyungJoo Ham <[email protected]>
Cc Rhyland Klein <[email protected]>
Cc Peter Edwards <[email protected]>
---
 drivers/power/ds2782_battery.c   |   12 +-----------
 drivers/power/lp8727_charger.c   |   13 +------------
 drivers/power/max17040_battery.c |   12 +-----------
 drivers/power/max17042_battery.c |   12 +-----------
 drivers/power/sbs-battery.c      |   12 +-----------
 drivers/power/z2_battery.c       |   13 +------------
 6 files changed, 6 insertions(+), 68 deletions(-)
drivers/power/ds2782_battery.c +1 -11
index bfbce5d..6e3d76a 100644
@@ -404,17 +404,7 @@ static struct i2c_driver ds278x_battery_driver = {
 	.id_table	= ds278x_id,
 };
 
-static int __init ds278x_init(void)
-{
-	return i2c_add_driver(&ds278x_battery_driver);
-}
-module_init(ds278x_init);
-
-static void __exit ds278x_exit(void)
-{
-	i2c_del_driver(&ds278x_battery_driver);
-}
-module_exit(ds278x_exit);
+module_i2c_driver(ds278x_battery_driver);
 
 MODULE_AUTHOR("Ryan Mallon");
 MODULE_DESCRIPTION("Maxim/Dallas DS2782 Stand-Alone Fuel Gauage IC driver");
drivers/power/lp8727_charger.c +1 -12
index b15b575..30de637 100644
@@ -475,18 +475,7 @@ static struct i2c_driver lp8727_driver = {
 	.id_table = lp8727_ids,
 };
 
-static int __init lp8727_init(void)
-{
-	return i2c_add_driver(&lp8727_driver);
-}
-
-static void __exit lp8727_exit(void)
-{
-	i2c_del_driver(&lp8727_driver);
-}
-
-module_init(lp8727_init);
-module_exit(lp8727_exit);
+module_i2c_driver(lp8727_driver);
 
 MODULE_DESCRIPTION("National Semiconductor LP8727 charger driver");
 MODULE_AUTHOR
drivers/power/max17040_battery.c +1 -11
index 2f2f9a6..1c8dd0e 100644
@@ -291,17 +291,7 @@ static struct i2c_driver max17040_i2c_driver = {
 	.id_table	= max17040_id,
 };
 
-static int __init max17040_init(void)
-{
-	return i2c_add_driver(&max17040_i2c_driver);
-}
-module_init(max17040_init);
-
-static void __exit max17040_exit(void)
-{
-	i2c_del_driver(&max17040_i2c_driver);
-}
-module_exit(max17040_exit);
+module_i2c_driver(max17040_i2c_driver);
 
 MODULE_AUTHOR("Minkyu Kang <[email protected]>");
 MODULE_DESCRIPTION("MAX17040 Fuel Gauge");
drivers/power/max17042_battery.c +1 -11
index 86acee2..b2fd9e2 100644
@@ -288,17 +288,7 @@ static struct i2c_driver max17042_i2c_driver = {
 	.id_table	= max17042_id,
 };
 
-static int __init max17042_init(void)
-{
-	return i2c_add_driver(&max17042_i2c_driver);
-}
-module_init(max17042_init);
-
-static void __exit max17042_exit(void)
-{
-	i2c_del_driver(&max17042_i2c_driver);
-}
-module_exit(max17042_exit);
+module_i2c_driver(max17042_i2c_driver);
 
 MODULE_AUTHOR("MyungJoo Ham <[email protected]>");
 MODULE_DESCRIPTION("MAX17042 Fuel Gauge");
drivers/power/sbs-battery.c +1 -11
index 9ff8af0..4f05498 100644
@@ -853,17 +853,7 @@ static struct i2c_driver sbs_battery_driver = {
 	},
 };
 
-static int __init sbs_battery_init(void)
-{
-	return i2c_add_driver(&sbs_battery_driver);
-}
-module_init(sbs_battery_init);
-
-static void __exit sbs_battery_exit(void)
-{
-	i2c_del_driver(&sbs_battery_driver);
-}
-module_exit(sbs_battery_exit);
+module_i2c_driver(sbs_battery_driver);
 
 MODULE_DESCRIPTION("SBS battery monitor driver");
 MODULE_LICENSE("GPL");
drivers/power/z2_battery.c +1 -12
index 636ebb2..15c3fba 100644
@@ -317,18 +317,7 @@ static struct i2c_driver z2_batt_driver = {
 	.id_table	= z2_batt_id,
 };
 
-static int __init z2_batt_init(void)
-{
-	return i2c_add_driver(&z2_batt_driver);
-}
-
-static void __exit z2_batt_exit(void)
-{
-	i2c_del_driver(&z2_batt_driver);
-}
-
-module_init(z2_batt_init);
-module_exit(z2_batt_exit);
+module_i2c_driver(z2_batt_driver);
 
 MODULE_LICENSE("GPL");
 MODULE_AUTHOR("Peter Edwards <[email protected]>");
Signature · 5 lines
1.7.5.4



���{.n�+�������+%�����ݶ��w��{.n�+����{��G�����{ay�ʇڙ�,j��f���h��������z_�(�階�ݢj"���m������G������?����&���~��iO��z��v�^�m����������?�I�
#3 lore raw
In reply to Axel Lin
Quoted 10 lines · Axel Lin
drivers/power/sbs-battery.c +0 -2
index 9ff8af0..4f05498 100644
@@ -853,17 +853,7 @@ static struct i2c_driver sbs_battery_driver = {
 	},
 };
 
-static int __init sbs_battery_init(void)
-{

drivers/power/sbs-battery.c static struct i2c_driver sbs_battery_driver = { · line 856

Quoted 10 lines
drivers/power/sbs-battery.c +1 -9
-	return i2c_add_driver(&sbs_battery_driver);
-}
-module_init(sbs_battery_init);
-
-static void __exit sbs_battery_exit(void)
-{
-	i2c_del_driver(&sbs_battery_driver);
-}
-module_exit(sbs_battery_exit);
+module_i2c_driver(sbs_battery_driver);

For sbs-battery
Acked-by Rhyland Klein <[email protected]>

-Rhyland

#4 lore raw
In reply to Axel Lin
Quoted 25 lines · Axel Lin

Factor out some boilerplate code for i2c driver registration into module_i2c_driver.

Cc Ryan Mallon <[email protected]>
Cc Woogyom Kim <[email protected]>
Cc Daniel Jeong <[email protected]>
Cc Minkyu Kang <[email protected]>
Cc MyungJoo Ham <[email protected]>
Cc Rhyland Klein <[email protected]>
Cc Peter Edwards <[email protected]>
---
 drivers/power/ds2782_battery.c   |   12 +-----------
 drivers/power/lp8727_charger.c   |   13 +------------
 drivers/power/max17040_battery.c |   12 +-----------
 drivers/power/max17042_battery.c |   12 +-----------
 drivers/power/sbs-battery.c      |   12 +-----------
 drivers/power/z2_battery.c       |   13 +------------
 6 files changed, 6 insertions(+), 68 deletions(-)
drivers/power/ds2782_battery.c +0 -0
index bfbce5d..6e3d76a 100644

drivers/power/ds2782_battery.c static struct i2c_driver ds278x_battery_driver = { · line 406

Quoted 3 lines
drivers/power/ds2782_battery.c +0 -0
@@ -404,17 +404,7 @@ static struct i2c_driver ds278x_battery_driver = {
 	.id_table	= ds278x_id,
 };
 

Cosmetic nit: I don't think that there should be an empty line. I.e. it should be just as we do with MODULE_DEVICE_TABLE and other macros:

static const struct i2c_device_id .. = {
	...
};

MODULE_DEVICE_TABLE(...)

static struct i2c_driver ... = {
	...
};

module_i2c_driver(...);

I fixed it up and applied the patch. Thanks!

Signature · 2 lines
Anton Vorontsov
Email: [email protected]