Regulators: ab3100 - fix probe and remove annotations
Probe and remove methods should not be marked as __init/__exit but rather __devinit/__devexit so that the needed sections stay in memory in presence of CONFIG_HOTPLUG. This is needed even on non hotpluggable buses. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
This commit is contained in:
committed by
Liam Girdwood
parent
4cf95663c8
commit
98bf7c057b
@@ -561,7 +561,7 @@ ab3100_regulator_desc[AB3100_NUM_REGULATORS] = {
|
|||||||
* for all the different regulators.
|
* for all the different regulators.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static int __init ab3100_regulators_probe(struct platform_device *pdev)
|
static int __devinit ab3100_regulators_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
struct ab3100_platform_data *plfdata = pdev->dev.platform_data;
|
struct ab3100_platform_data *plfdata = pdev->dev.platform_data;
|
||||||
struct ab3100 *ab3100 = platform_get_drvdata(pdev);
|
struct ab3100 *ab3100 = platform_get_drvdata(pdev);
|
||||||
@@ -641,7 +641,7 @@ static int __init ab3100_regulators_probe(struct platform_device *pdev)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __exit ab3100_regulators_remove(struct platform_device *pdev)
|
static int __devexit ab3100_regulators_remove(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
@@ -659,7 +659,7 @@ static struct platform_driver ab3100_regulators_driver = {
|
|||||||
.owner = THIS_MODULE,
|
.owner = THIS_MODULE,
|
||||||
},
|
},
|
||||||
.probe = ab3100_regulators_probe,
|
.probe = ab3100_regulators_probe,
|
||||||
.remove = __exit_p(ab3100_regulators_remove),
|
.remove = __devexit_p(ab3100_regulators_remove),
|
||||||
};
|
};
|
||||||
|
|
||||||
static __init int ab3100_regulators_init(void)
|
static __init int ab3100_regulators_init(void)
|
||||||
|
Reference in New Issue
Block a user