Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c0ca41a27ef40fbe6d5fe343b61d63d7e1b93d28
Commit:     c0ca41a27ef40fbe6d5fe343b61d63d7e1b93d28
Parent:     e036eaa681a17f71b64f6d9040fe605555623919
Author:     Magnus Damm <[EMAIL PROTECTED]>
AuthorDate: Thu Feb 14 13:59:02 2008 +0900
Committer:  Paul Mundt <[EMAIL PROTECTED]>
CommitDate: Thu Feb 14 14:25:37 2008 +0900

    sh: fix ioreadN_rep and iowriteN_rep
    
    This patch is a fix to make sure readsN/writesN are used over insN/outsN for
    ioreadN_rep/iowriteN_rep.
    
    The current state of the sh io code is that mmio operations like 
readN/writeN
    and ioreadN/iowriteN are unaffected by the value of generic_io_base. This is
    different fom port based io like inN/outN which gets adjusted using the 
value
    in generic_io_base.
    
    Without this patch ioreadN_rep/iowriteN_rep get their addresses adjusted.
    The address for mmio access is adjusted using generic_io_base. This is 
wrong.
    The ata core code currently crashes if generic_io_base is set.
    
    This patch changes ioreadN_rep/iowriteN_rep to follow the same rules as the
    rest of the mmio operations, ie don't adjust using generic_io_base.
    
    Signed-off-by: Magnus Damm <[EMAIL PROTECTED]>
    Acked-by: Katsuya MATSUBARA <[EMAIL PROTECTED]>
    Signed-off-by: Paul Mundt <[EMAIL PROTECTED]>
---
 include/asm-sh/io.h |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/include/asm-sh/io.h b/include/asm-sh/io.h
index 3d2b114..356e50d 100644
--- a/include/asm-sh/io.h
+++ b/include/asm-sh/io.h
@@ -182,13 +182,13 @@ __BUILD_MEMORY_STRING(w, u16)
 #define iowrite32(v,a)         writel((v),(a))
 #define iowrite32be(v,a)       __raw_writel(cpu_to_be32((v)),(a))
 
-#define ioread8_rep(a,d,c)     insb((a),(d),(c))
-#define ioread16_rep(a,d,c)    insw((a),(d),(c))
-#define ioread32_rep(a,d,c)    insl((a),(d),(c))
+#define ioread8_rep(a, d, c)   readsb((a), (d), (c))
+#define ioread16_rep(a, d, c)  readsw((a), (d), (c))
+#define ioread32_rep(a, d, c)  readsl((a), (d), (c))
 
-#define iowrite8_rep(a,s,c)    outsb((a),(s),(c))
-#define iowrite16_rep(a,s,c)   outsw((a),(s),(c))
-#define iowrite32_rep(a,s,c)   outsl((a),(s),(c))
+#define iowrite8_rep(a, s, c)  writesb((a), (s), (c))
+#define iowrite16_rep(a, s, c) writesw((a), (s), (c))
+#define iowrite32_rep(a, s, c) writesl((a), (s), (c))
 
 #define mmiowb()       wmb()   /* synco on SH-4A, otherwise a nop */
 
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to