diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-02-12 09:13:09 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-02-12 09:13:09 -0800 |
commit | 9398a10cd96422d529b9fb741637338c8cbcdd98 (patch) | |
tree | f41f4e4037b372b7c733cbd081ffeae9169a6042 | |
parent | dea054fc7f35d4664000b1e684713a83c2bd0888 (diff) | |
parent | 5c306c8ab5dac69714f6e38bed95cfb6bd7758ed (diff) | |
download | linux-9398a10cd96422d529b9fb741637338c8cbcdd98.tar.gz linux-9398a10cd96422d529b9fb741637338c8cbcdd98.tar.bz2 linux-9398a10cd96422d529b9fb741637338c8cbcdd98.zip |
Merge tag 'regulator-v3.14-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
Pull regulator fixes from Mark Brown:
"Two driver fixes, one fixing the mapping of interrupts on da9055
(which previously wouldn't have worked at all) and a fix for reference
counting OF nodes in the max14577 driver"
* tag 'regulator-v3.14-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
regulator: da9055: Remove use of regmap_irq_get_virq()
regulator: max14577: Add missing of_node_put
-rw-r--r-- | drivers/regulator/da9055-regulator.c | 4 | ||||
-rw-r--r-- | drivers/regulator/max14577.c | 5 |
2 files changed, 6 insertions, 3 deletions
diff --git a/drivers/regulator/da9055-regulator.c b/drivers/regulator/da9055-regulator.c index 7f340206d329..b14ebdad5dd2 100644 --- a/drivers/regulator/da9055-regulator.c +++ b/drivers/regulator/da9055-regulator.c @@ -576,7 +576,9 @@ static int da9055_regulator_probe(struct platform_device *pdev) /* Only LDO 5 and 6 has got the over current interrupt */ if (pdev->id == DA9055_ID_LDO5 || pdev->id == DA9055_ID_LDO6) { irq = platform_get_irq_byname(pdev, "REGULATOR"); - irq = regmap_irq_get_virq(da9055->irq_data, irq); + if (irq < 0) + return irq; + ret = devm_request_threaded_irq(&pdev->dev, irq, NULL, da9055_ldo5_6_oc_irq, IRQF_TRIGGER_HIGH | diff --git a/drivers/regulator/max14577.c b/drivers/regulator/max14577.c index b1078ba3f393..186df8785a91 100644 --- a/drivers/regulator/max14577.c +++ b/drivers/regulator/max14577.c @@ -168,10 +168,11 @@ static int max14577_regulator_dt_parse_pdata(struct platform_device *pdev) MAX14577_REG_MAX); if (ret < 0) { dev_err(&pdev->dev, "Error parsing regulator init data: %d\n", ret); - return ret; } - return 0; + of_node_put(np); + + return ret; } static inline struct regulator_init_data *match_init_data(int index) |