Skip to content

Commit 0debed5

Browse files
ChiYuan Huangbroonie
authored andcommitted
regulator: core: Fix resolve supply lookup issue
From Marek's log, the previous change modify the parent of rdev. https://lore.kernel.org/all/[email protected]/ In 'regulator_resolve_supply', it uses the parent DT node of rdev as the DT-lookup starting node. But the parent DT node may not exist. This will cause the NULL supply issue. This patch modify the parent of rdev back to the device that provides from 'regulator_config' in 'regulator_register'. Fixes: 8f3cbcd ("regulator: core: Use different devices for resource allocation and DT lookup") Reported-by: Marek Szyprowski <[email protected]> Tested-by: Marek Szyprowski <[email protected]> Signed-off-by: ChiYuan Huang <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mark Brown <[email protected]>
1 parent 8f3cbcd commit 0debed5

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/regulator/core.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5539,7 +5539,7 @@ regulator_register(struct device *dev,
55395539

55405540
/* register with sysfs */
55415541
rdev->dev.class = &regulator_class;
5542-
rdev->dev.parent = dev;
5542+
rdev->dev.parent = config->dev;
55435543
dev_set_name(&rdev->dev, "regulator.%lu",
55445544
(unsigned long) atomic_inc_return(&regulator_no));
55455545
dev_set_drvdata(&rdev->dev, rdev);

0 commit comments

Comments
 (0)