summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/target/arm/as3525/sansa-e200v2/button-e200v2.c3
-rw-r--r--firmware/target/arm/as3525/sansa-e200v2/lcd-e200v2.c4
2 files changed, 7 insertions, 0 deletions
diff --git a/firmware/target/arm/as3525/sansa-e200v2/button-e200v2.c b/firmware/target/arm/as3525/sansa-e200v2/button-e200v2.c
index 9154753..0e0e157 100644
--- a/firmware/target/arm/as3525/sansa-e200v2/button-e200v2.c
+++ b/firmware/target/arm/as3525/sansa-e200v2/button-e200v2.c
@@ -154,6 +154,9 @@ unsigned short button_read_dbop(void)
DBOP_CTRL |= (1<<15); /* start read */
while (!(DBOP_STAT & (1<<16))); /* wait for valid data */
+ int delay=10;
+ while(delay--); /* short delay before reading */
+
_dbop_din = DBOP_DIN; /* Read dbop data*/
/* Reset dbop for output */
diff --git a/firmware/target/arm/as3525/sansa-e200v2/lcd-e200v2.c b/firmware/target/arm/as3525/sansa-e200v2/lcd-e200v2.c
index 840d3c4..ece773f 100644
--- a/firmware/target/arm/as3525/sansa-e200v2/lcd-e200v2.c
+++ b/firmware/target/arm/as3525/sansa-e200v2/lcd-e200v2.c
@@ -138,6 +138,10 @@ static void lcd_write_cmd(int cmd)
/* Wait for fifo to empty */
while ((DBOP_STAT & (1<<10)) == 0);
+ /* Fuze OF has this loop and it seems to help us now also */
+ int delay=8;
+ while(delay--);
+
DBOP_TIMPOL_23 = 0xa167e06f;
}