diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2013-02-26 01:17:27 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2013-03-18 15:59:59 -0400 |
commit | bf30690029a3b8572a6fc2facb77fbde86992988 (patch) | |
tree | 6be672e18189c806c210d6ded581cee38f9c1524 /drivers/media/i2c | |
parent | 4458a54c5edce2a9bdf826273ceb7f4b3b7278c6 (diff) |
[media] Media: remove incorrect __init/__exit markups
Even if bus is not hot-pluggable, the devices can be unbound from the
driver via sysfs, so we should not be using __exit annotations on
remove() methods. The only exception is drivers registered with
platform_driver_probe() which specifically disables sysfs bind/unbind
attributes.
Similarly probe() methods should not be marked __init unless
platform_driver_probe() is used.
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Sakari Ailus <sakari.ailus@iki.fi>
Acked-by: Timo Kokkonen <timo.t.kokkonen@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/i2c')
-rw-r--r-- | drivers/media/i2c/adp1653.c | 4 | ||||
-rw-r--r-- | drivers/media/i2c/smiapp/smiapp-core.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/drivers/media/i2c/adp1653.c b/drivers/media/i2c/adp1653.c index df163800c8e1..ef75abe5984c 100644 --- a/drivers/media/i2c/adp1653.c +++ b/drivers/media/i2c/adp1653.c | |||
@@ -447,7 +447,7 @@ free_and_quit: | |||
447 | return ret; | 447 | return ret; |
448 | } | 448 | } |
449 | 449 | ||
450 | static int __exit adp1653_remove(struct i2c_client *client) | 450 | static int adp1653_remove(struct i2c_client *client) |
451 | { | 451 | { |
452 | struct v4l2_subdev *subdev = i2c_get_clientdata(client); | 452 | struct v4l2_subdev *subdev = i2c_get_clientdata(client); |
453 | struct adp1653_flash *flash = to_adp1653_flash(subdev); | 453 | struct adp1653_flash *flash = to_adp1653_flash(subdev); |
@@ -476,7 +476,7 @@ static struct i2c_driver adp1653_i2c_driver = { | |||
476 | .pm = &adp1653_pm_ops, | 476 | .pm = &adp1653_pm_ops, |
477 | }, | 477 | }, |
478 | .probe = adp1653_probe, | 478 | .probe = adp1653_probe, |
479 | .remove = __exit_p(adp1653_remove), | 479 | .remove = adp1653_remove, |
480 | .id_table = adp1653_id_table, | 480 | .id_table = adp1653_id_table, |
481 | }; | 481 | }; |
482 | 482 | ||
diff --git a/drivers/media/i2c/smiapp/smiapp-core.c b/drivers/media/i2c/smiapp/smiapp-core.c index 83c7ed7ffcc2..cae4f4683851 100644 --- a/drivers/media/i2c/smiapp/smiapp-core.c +++ b/drivers/media/i2c/smiapp/smiapp-core.c | |||
@@ -2833,7 +2833,7 @@ static int smiapp_probe(struct i2c_client *client, | |||
2833 | sensor->src->pads, 0); | 2833 | sensor->src->pads, 0); |
2834 | } | 2834 | } |
2835 | 2835 | ||
2836 | static int __exit smiapp_remove(struct i2c_client *client) | 2836 | static int smiapp_remove(struct i2c_client *client) |
2837 | { | 2837 | { |
2838 | struct v4l2_subdev *subdev = i2c_get_clientdata(client); | 2838 | struct v4l2_subdev *subdev = i2c_get_clientdata(client); |
2839 | struct smiapp_sensor *sensor = to_smiapp_sensor(subdev); | 2839 | struct smiapp_sensor *sensor = to_smiapp_sensor(subdev); |
@@ -2881,7 +2881,7 @@ static struct i2c_driver smiapp_i2c_driver = { | |||
2881 | .pm = &smiapp_pm_ops, | 2881 | .pm = &smiapp_pm_ops, |
2882 | }, | 2882 | }, |
2883 | .probe = smiapp_probe, | 2883 | .probe = smiapp_probe, |
2884 | .remove = __exit_p(smiapp_remove), | 2884 | .remove = smiapp_remove, |
2885 | .id_table = smiapp_id_table, | 2885 | .id_table = smiapp_id_table, |
2886 | }; | 2886 | }; |
2887 | 2887 | ||