From bf169ed7db624c18947849dee8a26df64d5065da Mon Sep 17 00:00:00 2001 From: Jens Arnold Date: Sun, 23 Sep 2007 19:15:01 +0000 Subject: Speed up C200 lcd_update() by ~7%. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14834 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/sandisk/sansa-c200/lcd-c200.c | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) (limited to 'firmware/target/arm/sandisk/sansa-c200/lcd-c200.c') diff --git a/firmware/target/arm/sandisk/sansa-c200/lcd-c200.c b/firmware/target/arm/sandisk/sansa-c200/lcd-c200.c index 6626ea4e6d..511456bf47 100644 --- a/firmware/target/arm/sandisk/sansa-c200/lcd-c200.c +++ b/firmware/target/arm/sandisk/sansa-c200/lcd-c200.c @@ -28,28 +28,17 @@ #define LCD_BUSY 0x8000 -/* check if number of useconds has past */ -static inline bool timer_check(int clock_start, int usecs) -{ - return ((int)(USEC_TIMER - clock_start)) >= usecs; -} - -/* wait for LCD with timeout */ +/* wait for LCD */ static inline void lcd_wait_write(void) { - int start = USEC_TIMER; - - do { - if ((LCD_BASE & LCD_BUSY) == 0) - break; - } while (timer_check(start, 1000) == 0); + while (LCD_BASE & LCD_BUSY); } /* send LCD data */ static void lcd_send_data(unsigned data) { lcd_wait_write(); - LCD_DATA = (data >> 8) & 0xff; + LCD_DATA = data >> 8; lcd_wait_write(); LCD_DATA = data & 0xff; -- cgit v1.2.3