parisc: Drop homebrewn io[read|write]64_[lo_hi|hi_lo]
authorLinus Walleij <linus.walleij@linaro.org>
Thu, 22 Sep 2022 19:18:39 +0000 (21:18 +0200)
committerArnd Bergmann <arnd@arndb.de>
Fri, 23 Sep 2022 19:52:27 +0000 (21:52 +0200)
The parisc implements ioread64_lo_hi(), ioread64_hi_lo()
iowrite64_lo_hi() and iowrite64_hi_lo() while we already
have a perfectly working generic version in the generic
portable assembly in <linux/io-64-nonatomic-hi-lo.h>.

Drop the custom versions in favor for the defaults.

Fixes: 77bfc8bdb5a1 ("parisc: Remove 64bit access on 32bit machines")
Cc: Arnd Bergmann <arnd@arndb.de>
Acked-by: Helge Deller <deller@gmx.de>
Reported-by: Helge Deller <deller@gmx.de>
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/parisc/lib/iomap.c

index d3d57119df64f7cb40f8f079d4a2e079770a30d2..915c0c4da66385c2e5297fc6950bbf7fc56cff4b 100644 (file)
@@ -360,26 +360,6 @@ u64 ioread64be(const void __iomem *addr)
 }
 #endif
 
-u64 ioread64_lo_hi(const void __iomem *addr)
-{
-       u32 low, high;
-
-       low = ioread32(addr);
-       high = ioread32(addr + sizeof(u32));
-
-       return low + ((u64)high << 32);
-}
-
-u64 ioread64_hi_lo(const void __iomem *addr)
-{
-       u32 low, high;
-
-       high = ioread32(addr + sizeof(u32));
-       low = ioread32(addr);
-
-       return low + ((u64)high << 32);
-}
-
 void iowrite8(u8 datum, void __iomem *addr)
 {
        if (unlikely(INDIRECT_ADDR(addr))) {
@@ -445,18 +425,6 @@ void iowrite64be(u64 datum, void __iomem *addr)
 }
 #endif
 
-void iowrite64_lo_hi(u64 val, void __iomem *addr)
-{
-       iowrite32(val, addr);
-       iowrite32(val >> 32, addr + sizeof(u32));
-}
-
-void iowrite64_hi_lo(u64 val, void __iomem *addr)
-{
-       iowrite32(val >> 32, addr + sizeof(u32));
-       iowrite32(val, addr);
-}
-
 /* Repeating interfaces */
 
 void ioread8_rep(const void __iomem *addr, void *dst, unsigned long count)
@@ -564,8 +532,6 @@ EXPORT_SYMBOL(ioread32be);
 EXPORT_SYMBOL(ioread64);
 EXPORT_SYMBOL(ioread64be);
 #endif
-EXPORT_SYMBOL(ioread64_lo_hi);
-EXPORT_SYMBOL(ioread64_hi_lo);
 EXPORT_SYMBOL(iowrite8);
 EXPORT_SYMBOL(iowrite16);
 EXPORT_SYMBOL(iowrite16be);
@@ -575,8 +541,6 @@ EXPORT_SYMBOL(iowrite32be);
 EXPORT_SYMBOL(iowrite64);
 EXPORT_SYMBOL(iowrite64be);
 #endif
-EXPORT_SYMBOL(iowrite64_lo_hi);
-EXPORT_SYMBOL(iowrite64_hi_lo);
 EXPORT_SYMBOL(ioread8_rep);
 EXPORT_SYMBOL(ioread16_rep);
 EXPORT_SYMBOL(ioread32_rep);