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

regulator: s2mps11: Don't store registered regulators in state container

Regulators registered by devm_regulator_register() do not have to be
stored in state container because they are never dereferenced later.
The array of regulator_dev can be safely removed from state container.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Mark Brown <broonie@linaro.org>

authored by

Krzysztof Kozlowski and committed by
Mark Brown
31195252 b28a960c

+5 -5
+5 -5
drivers/regulator/s2mps11.c
··· 28 28 #define S2MPS11_REGULATOR_CNT ARRAY_SIZE(regulators) 29 29 30 30 struct s2mps11_info { 31 - struct regulator_dev *rdev[S2MPS11_REGULATOR_MAX]; 32 - 33 31 int ramp_delay2; 34 32 int ramp_delay34; 35 33 int ramp_delay5; ··· 437 439 config.regmap = iodev->regmap_pmic; 438 440 config.driver_data = s2mps11; 439 441 for (i = 0; i < S2MPS11_REGULATOR_MAX; i++) { 442 + struct regulator_dev *regulator; 443 + 440 444 if (!reg_np) { 441 445 config.init_data = pdata->regulators[i].initdata; 442 446 config.of_node = pdata->regulators[i].reg_node; ··· 447 447 config.of_node = rdata[i].of_node; 448 448 } 449 449 450 - s2mps11->rdev[i] = devm_regulator_register(&pdev->dev, 450 + regulator = devm_regulator_register(&pdev->dev, 451 451 &regulators[i], &config); 452 - if (IS_ERR(s2mps11->rdev[i])) { 453 - ret = PTR_ERR(s2mps11->rdev[i]); 452 + if (IS_ERR(regulator)) { 453 + ret = PTR_ERR(regulator); 454 454 dev_err(&pdev->dev, "regulator init failed for %d\n", 455 455 i); 456 456 return ret;