This patch adds io{read|write}64[be] macros to point to the readq/writeq in use. This is because new drivers are encouraged to use ioreadXX, et al instead of readX[1], et al -- and mixing ioreadXX with readq is pretty ugly. [1] ldd3: section 9.4.2 Signed-off-by: Logan Gunthorpe <logang@xxxxxxxxxxxx> cc: Christoph Hellwig <hch@xxxxxx> cc: Arnd Bergmann <arnd@xxxxxxxx> cc: Alan Cox <gnomes@xxxxxxxxxxxxxxxxxxx> cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- include/linux/io-64-nonatomic-hi-lo.h | 16 ++++++++++++++++ include/linux/io-64-nonatomic-lo-hi.h | 16 ++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/include/linux/io-64-nonatomic-hi-lo.h b/include/linux/io-64-nonatomic-hi-lo.h index defcc4644ce3..07a75831244f 100644 --- a/include/linux/io-64-nonatomic-hi-lo.h +++ b/include/linux/io-64-nonatomic-hi-lo.h @@ -54,4 +54,20 @@ static inline void hi_lo_writeq_relaxed(__u64 val, volatile void __iomem *addr) #define writeq_relaxed hi_lo_writeq_relaxed #endif +#ifndef ioread64 +#define ioread64 readq +#endif + +#ifndef iowrite64 +#define iowrite64 writeq +#endif + +#ifndef ioread64be +#define ioread64be(p) be64_to_cpu(ioread64(p)) +#endif + +#ifndef iowrite64be +#define iowrite64be(v, p) iowrite64(cpu_to_be64(v), (p)) +#endif + #endif /* _LINUX_IO_64_NONATOMIC_HI_LO_H_ */ diff --git a/include/linux/io-64-nonatomic-lo-hi.h b/include/linux/io-64-nonatomic-lo-hi.h index 084461a4e5ab..3d0565e67175 100644 --- a/include/linux/io-64-nonatomic-lo-hi.h +++ b/include/linux/io-64-nonatomic-lo-hi.h @@ -54,4 +54,20 @@ static inline void lo_hi_writeq_relaxed(__u64 val, volatile void __iomem *addr) #define writeq_relaxed lo_hi_writeq_relaxed #endif +#ifndef ioread64 +#define ioread64 readq +#endif + +#ifndef iowrite64 +#define iowrite64 writeq +#endif + +#ifndef ioread64be +#define ioread64be(p) be64_to_cpu(ioread64(p)) +#endif + +#ifndef iowrite64be +#define iowrite64be(v, p) iowrite64(cpu_to_be64(v), (p)) +#endif + #endif /* _LINUX_IO_64_NONATOMIC_LO_HI_H_ */ -- 2.11.0