summaryrefslogtreecommitdiff
path: root/drivers/mfd
diff options
context:
space:
mode:
authorHaley Teng <hteng@nvidia.com>2011-10-26 21:37:44 +0800
committerVarun Wadekar <vwadekar@nvidia.com>2011-12-30 10:45:40 +0530
commit3f5e8a2246a4326951397f9d82fff1cc063b41f2 (patch)
treeccba613943b0d6f3c048fe4dd5ee0e09d76a8a11 /drivers/mfd
parentf09f6339d02b4720df4951cc6d182eb86c2e43f4 (diff)
tps6591x: fix tps6591x_gpio_output() cannot drive 'low' issue
mask the GPIO_SET bit (0x1) before decide set it or not by the input parameter 'value' Signed-off-by: Haley Teng <hteng@nvidia.com> Reviewed-on: http://git-master/r/60425 Reviewed-on: http://git-master/r/66589 (cherry picked from commit d7ac2209e0a3783004fba240eea87a8e569d3745) Change-Id: I33c69c9aaaf3c9b624fabbcbcab80e75de706d38 Reviewed-on: http://git-master/r/71962 Reviewed-by: Automatic_Commit_Validation_User Tested-by: Haley Teng <hteng@nvidia.com> Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Diffstat (limited to 'drivers/mfd')
-rw-r--r--drivers/mfd/tps6591x.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mfd/tps6591x.c b/drivers/mfd/tps6591x.c
index cc3ff239e24b..8ce44244e9ab 100644
--- a/drivers/mfd/tps6591x.c
+++ b/drivers/mfd/tps6591x.c
@@ -359,6 +359,7 @@ static int tps6591x_gpio_output(struct gpio_chip *gc, unsigned offset,
if (ret)
return ret;
+ reg_val &= ~0x1;
val = (value & 0x1) | 0x4;
reg_val = reg_val | val;
return __tps6591x_write(tps6591x->client, TPS6591X_GPIO_BASE_ADDR +