Patchwork sparc: add {read,write}*_be routines

login
register
mail settings
Submitter Jan Andersson
Date May 11, 2011, 9:13 a.m.
Message ID <1305105213-31675-1-git-send-email-jan@gaisler.com>
Download mbox | patch
Permalink /patch/95185/
State Accepted
Delegated to: David Miller
Headers show

Comments

Jan Andersson - May 11, 2011, 9:13 a.m.
This patch adds {read,write}*_be big endian memory access
routines to the io.h header used on SPARC32 and SPARC64.

Tested on SPARC32 (LEON)

Signed-off-by: Jan Andersson <jan@gaisler.com>
---
read/write_be are used in the USB layer to support big endian
host controllers, see drivers/usb/host/ehci.h.

PowerPC, MIPS and AVR32 have {read,write}*_be defined and by
also adding them to SPARC we no longer need to have an #ifdef
in the USB code to define them for SPARC_LEON, which is currently
done in usb-next.
---
 arch/sparc/include/asm/io.h |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)
David Miller - May 12, 2011, 8:45 p.m.
From: Jan Andersson <jan@gaisler.com>
Date: Wed, 11 May 2011 11:13:33 +0200

> This patch adds {read,write}*_be big endian memory access
> routines to the io.h header used on SPARC32 and SPARC64.
> 
> Tested on SPARC32 (LEON)
> 
> Signed-off-by: Jan Andersson <jan@gaisler.com>

Applied, thanks Jan.
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Jan Andersson - May 16, 2011, 7:57 a.m.
On 05/12/2011 10:45 PM, David Miller wrote:
> From: Jan Andersson <jan@gaisler.com>
> Date: Wed, 11 May 2011 11:13:33 +0200
> 
>> This patch adds {read,write}*_be big endian memory access
>> routines to the io.h header used on SPARC32 and SPARC64.
>>
>> Tested on SPARC32 (LEON)
>>
>> Signed-off-by: Jan Andersson <jan@gaisler.com>
> 
> Applied, thanks Jan.

Thanks David. Will this show up in sparc-next? Any chance that you could
update the tree on kernel.org? I was asked to provide identification of
the commit so that it could be merged into usb-next - in order for me to
get another patchset accepted.

Best regards,
  Jan
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller - May 16, 2011, 3:10 p.m.
From: Jan Andersson <jan@gaisler.com>
Date: Mon, 16 May 2011 09:57:28 +0200

> On 05/12/2011 10:45 PM, David Miller wrote:
>> From: Jan Andersson <jan@gaisler.com>
>> Date: Wed, 11 May 2011 11:13:33 +0200
>> 
>>> This patch adds {read,write}*_be big endian memory access
>>> routines to the io.h header used on SPARC32 and SPARC64.
>>>
>>> Tested on SPARC32 (LEON)
>>>
>>> Signed-off-by: Jan Andersson <jan@gaisler.com>
>> 
>> Applied, thanks Jan.
> 
> Thanks David. Will this show up in sparc-next? Any chance that you could
> update the tree on kernel.org? I was asked to provide identification of
> the commit so that it could be merged into usb-next - in order for me to
> get another patchset accepted.

It's now pushed to sparc-2.6
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/arch/sparc/include/asm/io.h b/arch/sparc/include/asm/io.h
index a34b299..f6902cf 100644
--- a/arch/sparc/include/asm/io.h
+++ b/arch/sparc/include/asm/io.h
@@ -5,4 +5,17 @@ 
 #else
 #include <asm/io_32.h>
 #endif
+
+/*
+ * Defines used for both SPARC32 and SPARC64
+ */
+
+/* Big endian versions of memory read/write routines */
+#define readb_be(__addr)	__raw_readb(__addr)
+#define readw_be(__addr)	__raw_readw(__addr)
+#define readl_be(__addr)	__raw_readl(__addr)
+#define writeb_be(__b, __addr)	__raw_writeb(__b, __addr)
+#define writel_be(__w, __addr)	__raw_writel(__w, __addr)
+#define writew_be(__l, __addr)	__raw_writew(__l, __addr)
+
 #endif