2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-18 18:23:53 +08:00

regulator: core: Try using the parent device for the default regmap

If the device doesn't have a regmap specified by the driver and we can't
find one on the device itself try its parent, providing a useful defualt
for many MFDs.

[Rewrite commit message -- broonie]

Signed-off-by: AnilKumar Ch <anilkumar@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
AnilKumar Ch 2012-09-07 20:45:05 +05:30 committed by Mark Brown
parent 2b5a24a01d
commit 52b84dac43

View File

@ -3202,8 +3202,10 @@ regulator_register(const struct regulator_desc *regulator_desc,
rdev->desc = regulator_desc; rdev->desc = regulator_desc;
if (config->regmap) if (config->regmap)
rdev->regmap = config->regmap; rdev->regmap = config->regmap;
else else if (dev_get_regmap(dev, NULL))
rdev->regmap = dev_get_regmap(dev, NULL); rdev->regmap = dev_get_regmap(dev, NULL);
else if (dev->parent)
rdev->regmap = dev_get_regmap(dev->parent, NULL);
INIT_LIST_HEAD(&rdev->consumer_list); INIT_LIST_HEAD(&rdev->consumer_list);
INIT_LIST_HEAD(&rdev->list); INIT_LIST_HEAD(&rdev->list);
BLOCKING_INIT_NOTIFIER_HEAD(&rdev->notifier); BLOCKING_INIT_NOTIFIER_HEAD(&rdev->notifier);