summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG205
-rw-r--r--Makefile2
-rw-r--r--cpu/arm920t/ep93xx/timer.c31
3 files changed, 219 insertions, 19 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 9f8c7cd..2dd7fe4 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,208 @@
+commit d650da2dd4af99967aabc43cccbd8f160eb4cea6
+Author: Matthias Kaehlcke <matthias@kaehlcke.net>
+Date: Tue Mar 9 22:13:33 2010 +0100
+
+ ep93xx timer: Fix resolution of get_ticks()
+
+ ep93xx timer: Make get_ticks() return a value in CONFIG_SYS_HZ resolution,
+ as announced by get_tbclk()
+
+ Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>
+
+commit 7e67fb5bf27a07d3b8d6b97c76f7195f7d68af58
+Author: Matthias Kaehlcke <matthias@kaehlcke.net>
+Date: Tue Mar 9 22:13:20 2010 +0100
+
+ ep93xx timer: Fix possible overflow in usecs_to_ticks()
+
+ ep93xx timer: Use 64-bit values in usecs_to_ticks() in order to avoid
+ overflows in intermediate values
+
+ Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>
+
+commit daa989b47297c9f73426783599c286ef3a1f3f49
+Author: Asen Dimov <dimov@ronetix.at>
+Date: Thu Mar 18 13:41:47 2010 +0200
+
+ correct a syntax typo in at91_matrix.h
+
+ Signed-off-by: Asen Dimov <dimov@ronetix.at>
+
+commit 322ff395c9aec7b87a2211fe4333fdf44377c564
+Author: Jeff Angielski <jeff@theptrgroup.com>
+Date: Wed Mar 17 15:09:26 2010 -0400
+
+ env: fix endian ordering in crc table
+
+ The crc table was being built as little endian for big endian
+ targets. This would cause fw_printenv to always fail with
+ "Warning: Bad CRC, using default environment" messages.
+
+ Signed-off-by: Jeff Angielski <jeff@theptrgroup.com>
+ Acked-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
+
+commit 51c2ac9bb574c1420b993615268392b0c1f829f6
+Author: Anatolij Gustschin <agust@denx.de>
+Date: Tue Mar 16 17:10:08 2010 +0100
+
+ mpc5121: cpu/mpc512x/diu.c: fix warnings
+
+ Fix warnings while compiling with CONFIG_VIDEO enabled:
+
+ diu.c: In function 'video_hw_init':
+ diu.c:158: warning: 'return' with no value, in function returning non-void
+ diu.c:162: warning: format '%ld' expects type 'long int', but argument 6 has type 'int'
+ diu.c:162: warning: format '%ld' expects type 'long int', but argument 7 has type 'int'
+
+ Signed-off-by: Anatolij Gustschin <agust@denx.de>
+
+commit a74908161a1b37d780d3a826a86807bbc50a3857
+Author: Anatolij Gustschin <agust@denx.de>
+Date: Tue Mar 16 15:29:33 2010 +0100
+
+ console.c: fix problem with splashimage
+
+ If a board uses cfb_console driver and splash image
+ and also defines CONFIG_SILENT_CONSOLE, the user is
+ locked out even if "silent" is not set. It is not
+ possible to get any output, neither on vga console
+ device nor on serial console after redirecting the
+ output to the serial console, since the GD_FLG_SILENT
+ flag remains set.
+
+ Fix the problem by redirecting the output from frame
+ buffer to serial console if splashimage is used.
+ Only suppress the output if "silent" environment
+ variable was set and don't set the GD_FLG_SILENT
+ flag arbitrarily.
+
+ Signed-off-by: Anatolij Gustschin <agust@denx.de>
+
+commit 5647f78d04174b0b99857d2a7cbf25141bd14a45
+Author: Thomas Weber <swirl@gmx.li>
+Date: Sat Mar 13 23:14:45 2010 +0100
+
+ mod change 755 => 644 for multiple files
+
+ I executed 'find . -name "*.[chS]" -perm 755 -exec chmod 644 {} \;'
+
+ Signed-off-by: Thomas Weber <swirl@gmx.li>
+ Add some more: neither Makefile nor config.mk need execute permissions.
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
+commit 99c006a320ceb9ea19135ac1512e4a81e8bebb72
+Author: Stefano Babic <sbabic@denx.de>
+Date: Sat Mar 13 21:09:00 2010 +0100
+
+ mxcmmc: fix warnings due to access 32 bit registers with 16 bit accessors
+
+ Some registers of the mxcmmc driver were accessed using
+ 16 bit accessor functions, because only the LSB is
+ significant. This is not needed and generates
+ warnings.
+
+ Signed-off-by: Stefano Babic <sbabic@denx.de>
+
+commit c96f86eefc215b67dd222694ce2b6f60e6a42b0b
+Author: Wolfgang Denk <wd@denx.de>
+Date: Sun Jan 17 23:55:53 2010 +0100
+
+ TFTP: allow for adjustable retransmission timout
+
+ So far, TFTP negotiated a fixed retransmission timeout of 5 seconds.
+ In some cases (busy networks, slow TFTP servers) this caused very
+ slow transfers. A new environment variable "tftptimeout" allows to
+ set this timeout. Lowering this value may make downloads succeed
+ faster in networks with high packet loss rates or with unreliable
+ TFTP servers.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+ Cc: Ben Warren <biggerbadderben@gmail.com>
+ Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
+
+commit 252b404d954f91499a4477a3e1064eb237ce5a1c
+Author: Wolfgang Denk <wd@denx.de>
+Date: Tue Mar 9 14:27:25 2010 +0100
+
+ Fix PCI_BASE_ADDRESS_5 handling in pci_hose_config_device()
+
+ Signed-off-by: FUJITA Kazutoshi <fujita@soum.co.jp>
+ Signed-off-by: <wd@denx.de>
+ Acked-by: Stefan Roese <sr@denx.de>
+
+commit 9d90a93d367272ee65550c0c9f82615cec967c70
+Author: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
+Date: Thu Feb 25 14:03:08 2010 +0100
+
+ cmd_mmc remove \n
+
+ This patch removes the \n after the help message for mmcinfo.
+ This resulted in an empty line being displayed after the mmcinfo line
+ when the help command was given.
+
+ Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
+
+commit 67c7189dd35cb368ef665126fd17816581bd2e92
+Author: Renato Andreola <renato.andreola@imagos.it>
+Date: Tue Mar 16 16:01:29 2010 -0400
+
+ nios2: Added support to YANU UART
+
+ Signed-off-by: Scott McNutt <smcnutt@psyent.com>
+
+commit 1e67fb32fbdae7949bb423c9e20b3f77c0a61663
+Author: Thomas Chou <thomas@wytron.com.tw>
+Date: Tue Mar 16 12:12:48 2010 -0400
+
+ nios2: use generic unaligned.h
+
+ Signed-off-by: Scott McNutt <smcnutt@psyent.com>
+
+commit 05022629a2ca6c385dc390d32c20aa27cf5d915a
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Thu Jan 21 05:01:15 2010 -0500
+
+ asm-blackfin/unaligned.h: add for zlib code
+
+ The new zlib code wants asm/unaligned.h, so have the Blackfin version pull
+ in the asm-generic/unaligned.h.
+
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+
+commit 3adc1fda38a6aacd4aaf3c2c9cc62a1e69e6de17
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Thu Jan 21 05:01:14 2010 -0500
+
+ asm-generic/unaligned.h: dynamic default unaligned accesses
+
+ This is based on the asm-arm/unaligned.h, but made generic so all arches
+ that cannot do unaligned accesses can utilize it.
+
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+
+commit be129aa71882421ad0b50cd3762915d10ace27ad
+Author: Matthias Weisser <matthias.weisser@graf-syteco.de>
+Date: Tue Jan 12 12:06:31 2010 +0100
+
+ video: Fix console display when splashscreen is used
+
+ If a splashscreen is used the console scrolling used the
+ scroll size as needed when a logo was displayed. This
+ patch sets the scroll size to the whole screen if
+ a splashscreen is shown.
+
+ Signed-off-by: Matthias Weisser <matthias.weisser@graf-syteco.de>
+
+commit 93910edb595a88d394da3eb2cf5148096155dfe9
+Author: Wolfgang Denk <wd@denx.de>
+Date: Fri Mar 12 23:06:04 2010 +0100
+
+ Prepare v2010.03-rc1
+
+ Coding style cleanup, update CHANGELOG.
+
+ Signed-off-by: Wolfgang Denk <wd@denx.de>
+
commit 4e72fb15c9073129e05820cc9c54f54bc4985835
Author: Wolfgang Denk <wd@denx.de>
Date: Fri Mar 12 22:11:00 2010 +0100
diff --git a/Makefile b/Makefile
index 5147df7..398e94d 100644
--- a/Makefile
+++ b/Makefile
@@ -24,7 +24,7 @@
VERSION = 2010
PATCHLEVEL = 03
SUBLEVEL =
-EXTRAVERSION = -rc1
+EXTRAVERSION = -rc2
ifneq "$(SUBLEVEL)" ""
U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
else
diff --git a/cpu/arm920t/ep93xx/timer.c b/cpu/arm920t/ep93xx/timer.c
index b1a01a0..31304b7 100644
--- a/cpu/arm920t/ep93xx/timer.c
+++ b/cpu/arm920t/ep93xx/timer.c
@@ -36,7 +36,7 @@
#define TIMER_CLKSEL (1 << 3)
#define TIMER_ENABLE (1 << 7)
-#define TIMER_FREQ 508469
+#define TIMER_FREQ 508469 /* ticks / second */
#define TIMER_MAX_VAL 0xFFFFFFFF
static struct ep93xx_timer
@@ -53,18 +53,10 @@ static inline unsigned long clk_to_systicks(unsigned long long clk_ticks)
return (unsigned long)sys_ticks;
}
-static inline unsigned long usecs_to_ticks(unsigned long usecs)
+static inline unsigned long long usecs_to_ticks(unsigned long usecs)
{
- unsigned long ticks;
-
- if (usecs >= 1000) {
- ticks = usecs / 1000;
- ticks *= TIMER_FREQ;
- ticks /= 1000;
- } else {
- ticks = usecs * TIMER_FREQ;
- ticks /= (1000 * 1000);
- }
+ unsigned long long ticks = (unsigned long long)usecs * TIMER_FREQ;
+ do_div(ticks, 1000 * 1000);
return ticks;
}
@@ -77,7 +69,7 @@ static inline unsigned long read_timer(void)
}
/*
- * timer without interrupts
+ * Get the number of ticks (in CONFIG_SYS_HZ resolution)
*/
unsigned long long get_ticks(void)
{
@@ -91,12 +83,12 @@ unsigned long long get_ticks(void)
timer.last_update = now;
- return timer.ticks;
+ return clk_to_systicks(timer.ticks);
}
unsigned long get_timer_masked(void)
{
- return clk_to_systicks(get_ticks());
+ return get_ticks();
}
unsigned long get_timer(unsigned long base)
@@ -117,10 +109,13 @@ void reset_timer(void)
void __udelay(unsigned long usec)
{
- const unsigned long target = get_ticks() + usecs_to_ticks(usec);
+ /* read the timer and update timer.ticks */
+ get_ticks();
+
+ const unsigned long long target = timer.ticks + usecs_to_ticks(usec);
- while (get_ticks() < target)
- /* noop */;
+ while (timer.ticks < target)
+ get_ticks();
}
int timer_init(void)