regulator: max8907: Fix using wrong dev argument for calling of_regulator_match
The dev parameter is the device requesting the data. In this case it should be &pdev->dev rather than pdev->dev.parent. The dev parameter is used to call devm_kzalloc in of_get_regulator_init_data(), which means this fixes a memory leak because the memory is allocated every time probe() is called, thus it should be freed when this driver is unloaded. Signed-off-by: Axel Lin <axel.lin@ingics.com> Reviewed-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
949db153b6
commit
f40cbcb933
1 changed files with 1 additions and 2 deletions
|
@ -237,8 +237,7 @@ static int max8907_regulator_parse_dt(struct platform_device *pdev)
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
ret = of_regulator_match(pdev->dev.parent, regulators,
|
||||
max8907_matches,
|
||||
ret = of_regulator_match(&pdev->dev, regulators, max8907_matches,
|
||||
ARRAY_SIZE(max8907_matches));
|
||||
if (ret < 0) {
|
||||
dev_err(&pdev->dev, "Error parsing regulator init data: %d\n",
|
||||
|
|
Loading…
Reference in a new issue