regulator: remove driver_data direct access of struct device
In the near future, the driver core is going to not allow direct access to the driver_data pointer in struct device. Instead, the functions dev_get_drvdata() and dev_set_drvdata() should be used. These functions have been around since the beginning, so are backwards compatible with all older kernel versions. Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
This commit is contained in:
Родитель
38c53c8913
Коммит
1909e2f658
|
@ -320,7 +320,7 @@ static int __devinit wm8400_regulator_probe(struct platform_device *pdev)
|
|||
struct regulator_dev *rdev;
|
||||
|
||||
rdev = regulator_register(®ulators[pdev->id], &pdev->dev,
|
||||
pdev->dev.platform_data, pdev->dev.driver_data);
|
||||
pdev->dev.platform_data, dev_get_drvdata(&pdev->dev));
|
||||
|
||||
if (IS_ERR(rdev))
|
||||
return PTR_ERR(rdev);
|
||||
|
@ -359,7 +359,7 @@ static struct platform_driver wm8400_regulator_driver = {
|
|||
int wm8400_register_regulator(struct device *dev, int reg,
|
||||
struct regulator_init_data *initdata)
|
||||
{
|
||||
struct wm8400 *wm8400 = dev->driver_data;
|
||||
struct wm8400 *wm8400 = dev_get_drvdata(dev);
|
||||
|
||||
if (wm8400->regulators[reg].name)
|
||||
return -EBUSY;
|
||||
|
@ -369,8 +369,8 @@ int wm8400_register_regulator(struct device *dev, int reg,
|
|||
wm8400->regulators[reg].name = "wm8400-regulator";
|
||||
wm8400->regulators[reg].id = reg;
|
||||
wm8400->regulators[reg].dev.parent = dev;
|
||||
wm8400->regulators[reg].dev.driver_data = wm8400;
|
||||
wm8400->regulators[reg].dev.platform_data = initdata;
|
||||
dev_set_drvdata(&wm8400->regulators[reg].dev, wm8400);
|
||||
|
||||
return platform_device_register(&wm8400->regulators[reg]);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче