Searched hist:e5bc0478ab6cf565619224536d75ecb2aedca43b (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/arch/arc/include/asm/ |
H A D | io.h | diff e5bc0478ab6cf565619224536d75ecb2aedca43b Thu May 05 03:02:34 CDT 2016 Vineet Gupta <vgupta@synopsys.com> ARC: Add missing io barriers to io{read,write}{16,32}be()
While reviewing a different change to asm-generic/io.h Arnd spotted that ARC ioread32 and ioread32be both of which come from asm-generic versions are not symmetrical in terms of calling the io barriers.
generic ioread32 -> ARC readl() [ has barriers] generic ioread32be -> __be32_to_cpu(__raw_readl()) [ lacks barriers]
While generic ioread32be is being remediated to call readl(), that involves a swab32(), causing double swaps on ioread32be() on Big Endian systems.
So provide our versions of big endian IO accessors to ensure io barrier calls while also keeping them optimal
Suggested-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Arnd Bergmann <arnd@arndb.de> Cc: stable@vger.kernel.org [4.2+] Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
|