Commit f15309d7 authored by Helge Deller's avatar Helge Deller

parisc: Add ioread64_hi_lo() and iowrite64_hi_lo()

The kernel test robot reports missing functions. Add them.

hppa-linux-ld: drivers/firmware/arm_scmi/perf.o: in function `scmi_perf_fc_ring_db':
 (.text+0x610): undefined reference to `ioread64_hi_lo'
 (.text+0x63c): undefined reference to `iowrite64_hi_lo'
Reported-by: default avatarkernel test robot <lkp@intel.com>
Signed-off-by: default avatarHelge Deller <deller@gmx.de>
parent 0b5d9a06
...@@ -346,6 +346,16 @@ u64 ioread64be(const void __iomem *addr) ...@@ -346,6 +346,16 @@ u64 ioread64be(const void __iomem *addr)
return *((u64 *)addr); return *((u64 *)addr);
} }
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) void iowrite8(u8 datum, void __iomem *addr)
{ {
if (unlikely(INDIRECT_ADDR(addr))) { if (unlikely(INDIRECT_ADDR(addr))) {
...@@ -409,6 +419,12 @@ void iowrite64be(u64 datum, void __iomem *addr) ...@@ -409,6 +419,12 @@ void iowrite64be(u64 datum, void __iomem *addr)
} }
} }
void iowrite64_hi_lo(u64 val, void __iomem *addr)
{
iowrite32(val >> 32, addr + sizeof(u32));
iowrite32(val, addr);
}
/* Repeating interfaces */ /* Repeating interfaces */
void ioread8_rep(const void __iomem *addr, void *dst, unsigned long count) void ioread8_rep(const void __iomem *addr, void *dst, unsigned long count)
...@@ -511,6 +527,7 @@ EXPORT_SYMBOL(ioread32); ...@@ -511,6 +527,7 @@ EXPORT_SYMBOL(ioread32);
EXPORT_SYMBOL(ioread32be); EXPORT_SYMBOL(ioread32be);
EXPORT_SYMBOL(ioread64); EXPORT_SYMBOL(ioread64);
EXPORT_SYMBOL(ioread64be); EXPORT_SYMBOL(ioread64be);
EXPORT_SYMBOL(ioread64_hi_lo);
EXPORT_SYMBOL(iowrite8); EXPORT_SYMBOL(iowrite8);
EXPORT_SYMBOL(iowrite16); EXPORT_SYMBOL(iowrite16);
EXPORT_SYMBOL(iowrite16be); EXPORT_SYMBOL(iowrite16be);
...@@ -518,6 +535,7 @@ EXPORT_SYMBOL(iowrite32); ...@@ -518,6 +535,7 @@ EXPORT_SYMBOL(iowrite32);
EXPORT_SYMBOL(iowrite32be); EXPORT_SYMBOL(iowrite32be);
EXPORT_SYMBOL(iowrite64); EXPORT_SYMBOL(iowrite64);
EXPORT_SYMBOL(iowrite64be); EXPORT_SYMBOL(iowrite64be);
EXPORT_SYMBOL(iowrite64_hi_lo);
EXPORT_SYMBOL(ioread8_rep); EXPORT_SYMBOL(ioread8_rep);
EXPORT_SYMBOL(ioread16_rep); EXPORT_SYMBOL(ioread16_rep);
EXPORT_SYMBOL(ioread32_rep); EXPORT_SYMBOL(ioread32_rep);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment