summaryrefslogtreecommitdiffstats
path: root/drivers/w1/masters/w1-gpio.c
diff options
context:
space:
mode:
authorDaniel Mack <daniel@caiaq.de>2009-03-12 22:31:25 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2009-03-13 00:20:23 +0100
commit8d0df7a3d1ecbaf5d5602a59055c8ca993855bed (patch)
treea9d9834c949da6e6572cc5d897560d2ded1adcfe /drivers/w1/masters/w1-gpio.c
parentuml: fix WARNING: vmlinux: 'memcpy' exported twice (diff)
downloadlinux-8d0df7a3d1ecbaf5d5602a59055c8ca993855bed.tar.xz
linux-8d0df7a3d1ecbaf5d5602a59055c8ca993855bed.zip
drivers/w1/masters/w1-gpio.c: fix read_bit()
W1 master implementations are expected to return 0 or 1 from their read_bit() function. However, not all platforms do return these values from gpio_get_value() - namely PXAs won't. Hence the w1 gpio-master needs to break the result down to 0 or 1 itself. Signed-off-by: Daniel Mack <daniel@caiaq.de> Cc: Ville Syrjala <syrjala@sci.fi> Cc: Evgeniy Polyakov <johnpol@2ka.mipt.ru> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/w1/masters/w1-gpio.c')
-rw-r--r--drivers/w1/masters/w1-gpio.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/w1/masters/w1-gpio.c b/drivers/w1/masters/w1-gpio.c
index 9e1138a75e8b..a411702413d6 100644
--- a/drivers/w1/masters/w1-gpio.c
+++ b/drivers/w1/masters/w1-gpio.c
@@ -39,7 +39,7 @@ static u8 w1_gpio_read_bit(void *data)
{
struct w1_gpio_platform_data *pdata = data;
- return gpio_get_value(pdata->pin);
+ return gpio_get_value(pdata->pin) ? 1 : 0;
}
static int __init w1_gpio_probe(struct platform_device *pdev)