summaryrefslogtreecommitdiffstats
path: root/arch/s390/include/asm/io.h
diff options
context:
space:
mode:
authorJason Gunthorpe <jgg@nvidia.com>2024-04-11 18:46:16 +0200
committerJason Gunthorpe <jgg@nvidia.com>2024-04-22 22:11:20 +0200
commite7bc47b16622d1016b3b77bbdb20fb9e213045f2 (patch)
tree27d7c119e0b28c8d6999b90763643325b8988ddc /arch/s390/include/asm/io.h
parents390: Implement __iowrite32_copy() (diff)
downloadlinux-e7bc47b16622d1016b3b77bbdb20fb9e213045f2.tar.xz
linux-e7bc47b16622d1016b3b77bbdb20fb9e213045f2.zip
s390: Stop using weak symbols for __iowrite64_copy()
Complete switching the __iowriteXX_copy() routines over to use #define and arch provided inline/macro functions instead of weak symbols. S390 has an implementation that simply calls another memcpy function. Inline this so the callers don't have to do two jumps. Link: https://lore.kernel.org/r/3-v3-1893cd8b9369+1925-mlx5_arm_wc_jgg@nvidia.com Acked-by: Niklas Schnelle <schnelle@linux.ibm.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'arch/s390/include/asm/io.h')
-rw-r--r--arch/s390/include/asm/io.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/s390/include/asm/io.h b/arch/s390/include/asm/io.h
index 00704fc8a54b..0fbc992d7a5e 100644
--- a/arch/s390/include/asm/io.h
+++ b/arch/s390/include/asm/io.h
@@ -81,6 +81,13 @@ static inline void __iowrite32_copy(void __iomem *to, const void *from,
}
#define __iowrite32_copy __iowrite32_copy
+static inline void __iowrite64_copy(void __iomem *to, const void *from,
+ size_t count)
+{
+ zpci_memcpy_toio(to, from, count * 8);
+}
+#define __iowrite64_copy __iowrite64_copy
+
#endif /* CONFIG_PCI */
#include <asm-generic/io.h>