summaryrefslogtreecommitdiffstats
path: root/firmware
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2007-09-23 19:15:01 +0000
committerJens Arnold <amiconn@rockbox.org>2007-09-23 19:15:01 +0000
commitbf169ed7db624c18947849dee8a26df64d5065da (patch)
tree2b5a08e17277540b4f7c7cf28b0eb789031cad81 /firmware
parenta33fc5dbbef5c6743003e4339374ad2b9e67b886 (diff)
downloadrockbox-bf169ed7db624c18947849dee8a26df64d5065da.tar.gz
rockbox-bf169ed7db624c18947849dee8a26df64d5065da.zip
Speed up C200 lcd_update() by ~7%.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14834 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/target/arm/sandisk/sansa-c200/lcd-c200.c17
1 files changed, 3 insertions, 14 deletions
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;