]> git.baikalelectronics.ru Git - kernel.git/commit
alpha: io: reorder barriers to guarantee writeX() and iowriteX() ordering
authorSinan Kaya <okaya@codeaurora.org>
Mon, 2 Apr 2018 17:48:00 +0000 (13:48 -0400)
committerMatt Turner <mattst88@gmail.com>
Sat, 7 Apr 2018 22:04:15 +0000 (15:04 -0700)
commitb01850ba70a7463c704008f3b904d533fec70c99
tree3cc22abf68b50fb7e220d1554b48a0ebf50804e3
parente8c111d2707dfc971053d5218f168337edefe969
alpha: io: reorder barriers to guarantee writeX() and iowriteX() ordering

memory-barriers.txt has been updated with the following requirement.

"When using writel(), a prior wmb() is not needed to guarantee that the
cache coherent memory writes have completed before writing to the MMIO
region."

Current writeX() and iowriteX() implementations on alpha are not
satisfying this requirement as the barrier is after the register write.

Move mb() in writeX() and iowriteX() functions to guarantee that HW
observes memory changes before performing register operations.

Signed-off-by: Sinan Kaya <okaya@codeaurora.org>
Reported-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Matt Turner <mattst88@gmail.com>
arch/alpha/include/asm/io.h