Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

regulator: tps65090: 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>

authored by

Axel Lin and committed by
Mark Brown
09a228e7 6c7a7a0e

+1 -1
+1 -1
drivers/regulator/tps65090-regulator.c
··· 186 186 return ERR_PTR(-ENODEV); 187 187 } 188 188 189 - ret = of_regulator_match(pdev->dev.parent, regulators, tps65090_matches, 189 + ret = of_regulator_match(&pdev->dev, regulators, tps65090_matches, 190 190 ARRAY_SIZE(tps65090_matches)); 191 191 if (ret < 0) { 192 192 dev_err(&pdev->dev,