summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/drivers/generic_i2c.c3
-rw-r--r--firmware/target/arm/as3525/fmradio-i2c-as3525.c2
2 files changed, 2 insertions, 3 deletions
diff --git a/firmware/drivers/generic_i2c.c b/firmware/drivers/generic_i2c.c
index 31a6e580ff..87e9091a3d 100644
--- a/firmware/drivers/generic_i2c.c
+++ b/firmware/drivers/generic_i2c.c
@@ -91,9 +91,9 @@ static unsigned char i2c_inb(const struct i2c_interface *iface, bool ack)
91 91
92 iface->sda_input(); 92 iface->sda_input();
93 93
94 iface->delay_su_dat();
95 /* clock in each bit, MSB first */ 94 /* clock in each bit, MSB first */
96 for ( i=0x80; i; i>>=1 ) { 95 for ( i=0x80; i; i>>=1 ) {
96 iface->delay_su_dat();
97 iface->scl_hi(); 97 iface->scl_hi();
98 iface->delay_thigh(); 98 iface->delay_thigh();
99 if (iface->sda()) 99 if (iface->sda())
@@ -123,7 +123,6 @@ static int i2c_outb(const struct i2c_interface *iface, unsigned char byte)
123 iface->scl_hi(); 123 iface->scl_hi();
124 iface->delay_thigh(); 124 iface->delay_thigh();
125 iface->scl_lo(); 125 iface->scl_lo();
126 iface->delay_hd_dat();
127 } 126 }
128 127
129 return i2c_getack(iface); 128 return i2c_getack(iface);
diff --git a/firmware/target/arm/as3525/fmradio-i2c-as3525.c b/firmware/target/arm/as3525/fmradio-i2c-as3525.c
index 390dbb589a..99b9bdff02 100644
--- a/firmware/target/arm/as3525/fmradio-i2c-as3525.c
+++ b/firmware/target/arm/as3525/fmradio-i2c-as3525.c
@@ -111,7 +111,7 @@ static void fm_delay(void)
111 volatile int i; 111 volatile int i;
112 112
113 /* this loop is uncalibrated and could use more sophistication */ 113 /* this loop is uncalibrated and could use more sophistication */
114 for (i = 0; i < 100; i++) { 114 for (i = 0; i < 20; i++) {
115 } 115 }
116} 116}
117 117