| From ca0c37a0b489bb14bf3e1549e7a8d0c9a17f4919 Mon Sep 17 00:00:00 2001 |
| From: Krzysztof Kozlowski <k.kozlowski@samsung.com> |
| Date: Mon, 3 Nov 2014 15:07:05 +0100 |
| Subject: regulator: max77693: Fix use of uninitialized regulator config |
| |
| From: Krzysztof Kozlowski <k.kozlowski@samsung.com> |
| |
| commit ca0c37a0b489bb14bf3e1549e7a8d0c9a17f4919 upstream. |
| |
| Driver allocated on stack struct regulator_config but didn't initialize |
| it fully. Few fields (driver_data, ena_gpio) were left untouched. This |
| lead to using random ena_gpio values as GPIOs for max77693 regulators. |
| |
| On occasion these values could match real GPIO numbers leading to |
| interfering with other drivers and to unsuccessful enable/disable of |
| regulator. |
| |
| Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> |
| Fixes: 80b022e29bfd ("regulator: max77693: Add max77693 regualtor driver.") |
| Signed-off-by: Mark Brown <broonie@kernel.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/regulator/max77693.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/regulator/max77693.c |
| +++ b/drivers/regulator/max77693.c |
| @@ -227,7 +227,7 @@ static int max77693_pmic_probe(struct pl |
| struct max77693_dev *iodev = dev_get_drvdata(pdev->dev.parent); |
| struct max77693_regulator_data *rdata = NULL; |
| int num_rdata, i; |
| - struct regulator_config config; |
| + struct regulator_config config = { }; |
| |
| num_rdata = max77693_pmic_init_rdata(&pdev->dev, &rdata); |
| if (!rdata || num_rdata <= 0) { |