summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarius <marius@FreeBSD.org>2012-04-14 17:27:34 +0000
committermarius <marius@FreeBSD.org>2012-04-14 17:27:34 +0000
commit330283063f351c3bbd9c54affbe2ea60afc76f5c (patch)
tree5866e9622135410cfa8122872179340b5ebe1a31
parent460b10f523265e65dbc80afeb31bc0ee7cea8fbc (diff)
downloadFreeBSD-src-330283063f351c3bbd9c54affbe2ea60afc76f5c.zip
FreeBSD-src-330283063f351c3bbd9c54affbe2ea60afc76f5c.tar.gz
Generate an obviously missing STOP when having finished transmitting data.
This fixes communication with PCF8563.
-rw-r--r--sys/arm/at91/at91_twi.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/arm/at91/at91_twi.c b/sys/arm/at91/at91_twi.c
index 26d8753..a76c313 100644
--- a/sys/arm/at91/at91_twi.c
+++ b/sys/arm/at91/at91_twi.c
@@ -364,6 +364,7 @@ at91_twi_transfer(device_t dev, struct iic_msg *msgs, uint32_t nmsgs)
goto out;
WR4(sc, TWI_THR, *buf++);
}
+ WR4(sc, TWI_CR, TWI_CR_STOP);
}
if ((err = at91_twi_wait(sc, TWI_SR_TXCOMP)))
break;
OpenPOWER on IntegriCloud