提交 07c3d9ea 编写于 作者: L Logan Gunthorpe 提交者: Michael Ellerman

powerpc: iomap.c: introduce io{read|write}64_{lo_hi|hi_lo}

These functions will be introduced into the generic iomap.c so they
can deal with PIO accesses in hi-lo/lo-hi variants. Thus, the powerpc
version of iomap.c will need to provide the same functions even
though, in this arch, they are identical to the regular
io{read|write}64 functions.
Signed-off-by: NLogan Gunthorpe <logang@deltatee.com>
Tested-by: NHoria Geantă <horia.geanta@nxp.com>
Reviewed-by: NAndy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: NMichael Ellerman <mpe@ellerman.id.au>
上级 ef237039
...@@ -45,12 +45,32 @@ u64 ioread64(void __iomem *addr) ...@@ -45,12 +45,32 @@ u64 ioread64(void __iomem *addr)
{ {
return readq(addr); return readq(addr);
} }
u64 ioread64_lo_hi(void __iomem *addr)
{
return readq(addr);
}
u64 ioread64_hi_lo(void __iomem *addr)
{
return readq(addr);
}
u64 ioread64be(void __iomem *addr) u64 ioread64be(void __iomem *addr)
{ {
return readq_be(addr); return readq_be(addr);
} }
u64 ioread64be_lo_hi(void __iomem *addr)
{
return readq_be(addr);
}
u64 ioread64be_hi_lo(void __iomem *addr)
{
return readq_be(addr);
}
EXPORT_SYMBOL(ioread64); EXPORT_SYMBOL(ioread64);
EXPORT_SYMBOL(ioread64_lo_hi);
EXPORT_SYMBOL(ioread64_hi_lo);
EXPORT_SYMBOL(ioread64be); EXPORT_SYMBOL(ioread64be);
EXPORT_SYMBOL(ioread64be_lo_hi);
EXPORT_SYMBOL(ioread64be_hi_lo);
#endif /* __powerpc64__ */ #endif /* __powerpc64__ */
void iowrite8(u8 val, void __iomem *addr) void iowrite8(u8 val, void __iomem *addr)
...@@ -83,12 +103,32 @@ void iowrite64(u64 val, void __iomem *addr) ...@@ -83,12 +103,32 @@ void iowrite64(u64 val, void __iomem *addr)
{ {
writeq(val, addr); writeq(val, addr);
} }
void iowrite64_lo_hi(u64 val, void __iomem *addr)
{
writeq(val, addr);
}
void iowrite64_hi_lo(u64 val, void __iomem *addr)
{
writeq(val, addr);
}
void iowrite64be(u64 val, void __iomem *addr) void iowrite64be(u64 val, void __iomem *addr)
{ {
writeq_be(val, addr); writeq_be(val, addr);
} }
void iowrite64be_lo_hi(u64 val, void __iomem *addr)
{
writeq_be(val, addr);
}
void iowrite64be_hi_lo(u64 val, void __iomem *addr)
{
writeq_be(val, addr);
}
EXPORT_SYMBOL(iowrite64); EXPORT_SYMBOL(iowrite64);
EXPORT_SYMBOL(iowrite64_lo_hi);
EXPORT_SYMBOL(iowrite64_hi_lo);
EXPORT_SYMBOL(iowrite64be); EXPORT_SYMBOL(iowrite64be);
EXPORT_SYMBOL(iowrite64be_lo_hi);
EXPORT_SYMBOL(iowrite64be_hi_lo);
#endif /* __powerpc64__ */ #endif /* __powerpc64__ */
/* /*
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册