aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/bh1770glc.c
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2010-11-19 17:04:25 +0900
committerPaul Mundt <lethal@linux-sh.org>2010-11-19 17:04:25 +0900
commitfe040be2fdc49a4132c5f64359c629aeeb8e4947 (patch)
tree40323a8f05d3754372f561bb8f4698ef1a4e9c8f /drivers/misc/bh1770glc.c
parent2006920a18cc9f499e5cccf9e6f1aa9f6120705e (diff)
parent6722a4016d7f5f107a82ad71a3ee1ccec105532f (diff)
downloadkernel_samsung_smdk4412-fe040be2fdc49a4132c5f64359c629aeeb8e4947.zip
kernel_samsung_smdk4412-fe040be2fdc49a4132c5f64359c629aeeb8e4947.tar.gz
kernel_samsung_smdk4412-fe040be2fdc49a4132c5f64359c629aeeb8e4947.tar.bz2
Merge branch 'common/fbdev-mipi' of master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6
Diffstat (limited to 'drivers/misc/bh1770glc.c')
-rw-r--r--drivers/misc/bh1770glc.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/misc/bh1770glc.c b/drivers/misc/bh1770glc.c
index cee632e..d79a972 100644
--- a/drivers/misc/bh1770glc.c
+++ b/drivers/misc/bh1770glc.c
@@ -649,7 +649,7 @@ static ssize_t bh1770_power_state_store(struct device *dev,
{
struct bh1770_chip *chip = dev_get_drvdata(dev);
unsigned long value;
- size_t ret;
+ ssize_t ret;
if (strict_strtoul(buf, 0, &value))
return -EINVAL;
@@ -659,8 +659,12 @@ static ssize_t bh1770_power_state_store(struct device *dev,
pm_runtime_get_sync(dev);
ret = bh1770_lux_rate(chip, chip->lux_rate_index);
- ret |= bh1770_lux_interrupt_control(chip, BH1770_ENABLE);
+ if (ret < 0) {
+ pm_runtime_put(dev);
+ goto leave;
+ }
+ ret = bh1770_lux_interrupt_control(chip, BH1770_ENABLE);
if (ret < 0) {
pm_runtime_put(dev);
goto leave;