From f5e78674ffb08fbea9fa56fda0d88c97a7a03041 Mon Sep 17 00:00:00 2001 From: Miika Pekkarinen Date: Thu, 17 Aug 2006 18:23:50 +0000 Subject: Prevent unlikely endless loop. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10637 a1c6a512-1295-4272-9138-f99709370657 --- firmware/drivers/eeprom_24cxx.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/firmware/drivers/eeprom_24cxx.c b/firmware/drivers/eeprom_24cxx.c index 66bc235052..e045a13fa6 100644 --- a/firmware/drivers/eeprom_24cxx.c +++ b/firmware/drivers/eeprom_24cxx.c @@ -46,7 +46,7 @@ #define SCL ( 0x00001000 & GPIO_READ) #define SCL_OUT_LO and_l(~0x00001000, &GPIO_OUT) #define SCL_LO or_l( 0x00001000, &GPIO_ENABLE) -#define SCL_HI and_l(~0x00001000, &GPIO_ENABLE); while(!SCL); +#define SCL_HI and_l(~0x00001000, &GPIO_ENABLE) /* SDA is GPIO1, 13 */ #define SDA ( 0x00002000 & GPIO1_READ) @@ -92,6 +92,7 @@ static void sw_i2c_stop(void) static void sw_i2c_ack(void) { SCL_LO; + DELAY; SDA_LO; DELAY; @@ -105,6 +106,7 @@ static bool sw_i2c_getack(void) int count = 10; SCL_LO; + DELAY; SDA_HI; /* sets to input */ DELAY; SCL_HI; -- cgit v1.2.3