From mboxrd@z Thu Jan 1 00:00:00 1970 From: Logan Gunthorpe Subject: [PATCH v2 1/3] io-64-nonatomic: add io{read|write}64[be] macros Date: Tue, 27 Jun 2017 17:02:02 -0600 Message-ID: <20170627230204.16410-2-logang@deltatee.com> References: <20170627230204.16410-1-logang@deltatee.com> Return-path: In-Reply-To: <20170627230204.16410-1-logang@deltatee.com> Sender: linux-kernel-owner@vger.kernel.org To: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-ntb@googlegroups.com, linux-crypto@vger.kernel.org Cc: Arnd Bergmann , Greg Kroah-Hartman , Jyri Sarha , Stephen Bates , Logan Gunthorpe , Christoph Hellwig , Alan Cox List-Id: linux-arch.vger.kernel.org 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 cc: Christoph Hellwig cc: Arnd Bergmann cc: Alan Cox cc: Greg Kroah-Hartman --- 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 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ale.deltatee.com ([207.54.116.67]:43180 "EHLO ale.deltatee.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753931AbdF0XCO (ORCPT ); Tue, 27 Jun 2017 19:02:14 -0400 From: Logan Gunthorpe Date: Tue, 27 Jun 2017 17:02:02 -0600 Message-ID: <20170627230204.16410-2-logang@deltatee.com> In-Reply-To: <20170627230204.16410-1-logang@deltatee.com> References: <20170627230204.16410-1-logang@deltatee.com> Subject: [PATCH v2 1/3] io-64-nonatomic: add io{read|write}64[be] macros Sender: linux-arch-owner@vger.kernel.org List-ID: To: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-ntb@googlegroups.com, linux-crypto@vger.kernel.org Cc: Arnd Bergmann , Greg Kroah-Hartman , Jyri Sarha , Stephen Bates , Logan Gunthorpe , Christoph Hellwig , Alan Cox Message-ID: <20170627230202.Zho4DlefyRcJs7apftLOnxiaG2fVJ1GEeLuOyxQjJTs@z> 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 cc: Christoph Hellwig cc: Arnd Bergmann cc: Alan Cox cc: Greg Kroah-Hartman --- 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