Commit 0ce7d00d0d7bc04d917b8775da177dde962ce17e

Authored by Axel Lin
Committed by Mark Brown
1 parent 6116ad94e1

regulator: tps6507x: 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>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

Showing 1 changed file with 1 additions and 1 deletions Side-by-side Diff

drivers/regulator/tps6507x-regulator.c
... ... @@ -394,7 +394,7 @@
394 394 count = ARRAY_SIZE(tps6507x_matches);
395 395 matches = tps6507x_matches;
396 396  
397   - ret = of_regulator_match(pdev->dev.parent, regulators, matches, count);
  397 + ret = of_regulator_match(&pdev->dev, regulators, matches, count);
398 398 if (ret < 0) {
399 399 dev_err(&pdev->dev, "Error parsing regulator init data: %d\n",
400 400 ret);