From e734017e2f0f4b0d70242c9621359fa79b74318d Mon Sep 17 00:00:00 2001 From: Linus Nielsen Feltzing Date: Tue, 1 Mar 2005 14:32:17 +0000 Subject: iRiver: more relaxed LCD timing git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6091 a1c6a512-1295-4272-9138-f99709370657 --- firmware/drivers/lcd.S | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'firmware') diff --git a/firmware/drivers/lcd.S b/firmware/drivers/lcd.S index 585b9d1e67..ee3eedb7b9 100755 --- a/firmware/drivers/lcd.S +++ b/firmware/drivers/lcd.S @@ -362,9 +362,13 @@ lcd_write_data: lea 0xf0000000,%a1 .loop: - move.b (%a0)+,%d1 - move.w %d1,(%a1) - subq.l #1,%d0 - bne .loop + /* When running in IRAM, this loop takes 7 cycles plus the LCD write. + The 7 cycles are necessary to follow the LCD timing specs + at 140MHz */ + move.b (%a0)+,%d1 /* 3(1/0) */ + move.w %d1,(%a1) /* 1(0/1) */ + subq.l #1,%d0 /* 1(0/0) */ + nop /* 1(0/0) */ + bne .loop /* 2(0/0) */ rts #endif -- cgit v1.2.3