diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2010-10-14 06:52:46 +0000 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2010-10-14 06:52:46 +0000 |
commit | d267a8a0b0f6fdd90554b36037b38206f1c13d30 (patch) | |
tree | c9cdd4bd3c647b8baf617c3f6fb7cbf0fb3c719a /c | |
parent | 2010-10-11 Chris Johns <chrisj@rtems.org> (diff) | |
download | rtems-d267a8a0b0f6fdd90554b36037b38206f1c13d30.tar.bz2 |
2010-10-14 Sebastian Huber <sebastian.huber@embedded-brains.de>
* misc/system-clocks.c: Fixed lpc24xx_micro_seconds_delay().
Diffstat (limited to 'c')
-rw-r--r-- | c/src/lib/libbsp/arm/lpc24xx/ChangeLog | 4 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/lpc24xx/misc/io.c | 10 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/lpc24xx/misc/system-clocks.c | 8 |
3 files changed, 17 insertions, 5 deletions
diff --git a/c/src/lib/libbsp/arm/lpc24xx/ChangeLog b/c/src/lib/libbsp/arm/lpc24xx/ChangeLog index 52ddba6c55..d63d8e35bf 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/ChangeLog +++ b/c/src/lib/libbsp/arm/lpc24xx/ChangeLog @@ -1,3 +1,7 @@ +2010-10-14 Sebastian Huber <sebastian.huber@embedded-brains.de> + + * misc/system-clocks.c: Fixed lpc24xx_micro_seconds_delay(). + 2010-06-23 Sebastian Huber <sebastian.huber@embedded-brains.de> * make/custom/lpc23xx_tli800.cfg, startup/linkcmds.lpc23xx_tli800: New diff --git a/c/src/lib/libbsp/arm/lpc24xx/misc/io.c b/c/src/lib/libbsp/arm/lpc24xx/misc/io.c index 877131fa77..7d2198d4cd 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/misc/io.c +++ b/c/src/lib/libbsp/arm/lpc24xx/misc/io.c @@ -7,7 +7,7 @@ */ /* - * Copyright (c) 2009 + * Copyright (c) 2009, 2010 * embedded brains GmbH * Obere Lagerstr. 30 * D-82178 Puchheim @@ -110,6 +110,14 @@ static const lpc24xx_io_entry lpc24xx_io_config_table [] = { /* PWM */ LPC24XX_IO_ENTRY(LPC24XX_MODULE_PWM_1, 0, 2, 0, 2, 0, LPC24XX_IO_ALTERNATE_0), + /* LCD */ + LPC24XX_IO_ENTRY(LPC24XX_MODULE_LCD, 0, 0, 4, 0, 9, LPC24XX_IO_ALTERNATE_0), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_LCD, 0, 1, 20, 1, 29, LPC24XX_IO_ALTERNATE_0), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_LCD, 0, 2, 0, 2, 3, LPC24XX_IO_ALTERNATE_2), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_LCD, 0, 2, 5, 2, 9, LPC24XX_IO_ALTERNATE_2), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_LCD, 0, 2, 12, 2, 13, LPC24XX_IO_ALTERNATE_0), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_LCD, 0, 4, 28, 4, 29, LPC24XX_IO_ALTERNATE_1), + /* Terminate */ LPC24XX_IO_ENTRY(LPC24XX_MODULE_COUNT, 0, 0, 0, 0, 0, 0) }; diff --git a/c/src/lib/libbsp/arm/lpc24xx/misc/system-clocks.c b/c/src/lib/libbsp/arm/lpc24xx/misc/system-clocks.c index e5d9fc5585..00648ec4a6 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/misc/system-clocks.c +++ b/c/src/lib/libbsp/arm/lpc24xx/misc/system-clocks.c @@ -63,12 +63,12 @@ void lpc24xx_timer_initialize(void) void lpc24xx_micro_seconds_delay(unsigned us) { unsigned start = lpc24xx_timer(); - unsigned end = start + us * (lpc24xx_cclk() / 1000000); - unsigned now = 0; + unsigned delay = us * (lpc24xx_cclk() / 1000000); + unsigned elapsed = 0; do { - now = lpc24xx_timer(); - } while (now < end); + elapsed = lpc24xx_timer() - start; + } while (elapsed <= delay); } unsigned lpc24xx_pllclk(void) |