Thread (49 messages) 49 messages, 5 authors, 2018-07-14

Re: [v18,3/7] iomap: introduce io{read|write}64_{lo_hi|hi_lo}

From: Logan Gunthorpe <logang@deltatee.com>
Date: 2018-07-14 00:20:35
Also in: linux-arch, lkml
Subsystem: generic include/asm header files, the rest · Maintainers: Arnd Bergmann, Linus Torvalds


On 13/07/18 05:38 PM, Guenter Roeck wrote:
This patch causes a build failure in -next when building
ppc:corenet64_smp_defconfig.
Thanks for the report. This 64bit IO stuff is a bit of a mess. It looks
like your corner case arch and config was never covered by the kbuild
robot which has run extensively on this patchset.

Anyway, I think the fix is to put back the ioread64/write64 prototypes
(even though they are only used in this one corner).

Can you try it with the following patch to ensure it fixes things for you?

Logan

--
diff --git a/include/asm-generic/iomap.h b/include/asm-generic/iomap.h
index 5a4af0199b32..9f11a79e0d7a 100644
--- a/include/asm-generic/iomap.h
+++ b/include/asm-generic/iomap.h
@@ -32,6 +32,11 @@ extern unsigned int ioread16be(void __iomem *);
 extern unsigned int ioread32(void __iomem *);
 extern unsigned int ioread32be(void __iomem *);

+#ifdef CONFIG_64BIT
+extern u64 ioread64(void __iomem *);
+extern u64 ioread64be(void __iomem *);
+#endif
+
 #ifdef readq
 #define ioread64_lo_hi ioread64_lo_hi
 #define ioread64_hi_lo ioread64_hi_lo
@@ -49,6 +54,11 @@ extern void iowrite16be(u16, void __iomem *);
 extern void iowrite32(u32, void __iomem *);
 extern void iowrite32be(u32, void __iomem *);

+#ifdef CONFIG_64BIT
+extern void iowrite64(u64, void __iomem *);
+extern void iowrite64be(u64, void __iomem *);
+#endif
+
 #ifdef writeq
 #define iowrite64_lo_hi iowrite64_lo_hi
 #define iowrite64_hi_lo iowrite64_hi_lo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help