u-boot-brain/arch/arm
Wolfgang Denk 495df3bad9 ARM: fix write*() I/O accessors
Commit 3c0659b "ARM: Avoid compiler optimization for readb, writeb
and friends." introduced I/O accessors with memory barriers.
Unfortunately the new write*() accessors introduced a bug:

The problem is that the argument "v" gets evaluated twice.  This
breaks code like used here (from "drivers/net/dnet.c"):

	for (i = 0; i < wrsz; i++)
		writel(*bufp++, &dnet->regs->TX_DATA_FIFO);

Use auxiliary variables to avoid such problems.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Albert Aribaud <albert.aribaud@free.fr>
Cc: Alexander Holler <holler@ahsoftware.de>
Cc: Dirk Behme <dirk.behme@googlemail.com>
2011-02-21 08:30:55 +01:00
..
cpu arm relocation: Fix calculation of board_init_r 2011-02-21 08:30:55 +01:00
include/asm ARM: fix write*() I/O accessors 2011-02-21 08:30:55 +01:00
lib Replace "FLASH" strings with "Flash" or "flash" 2011-01-19 00:02:37 +01:00
config.mk ARM: fix broken build of ARM 2011-02-02 00:54:43 +01:00