Author: kevlo
Date: Tue May 24 09:23:04 2016
New Revision: 300594
URL: https://svnweb.freebsd.org/changeset/base/300594

Log:
  Add __iowrite32_copy() to the Linux kernel compatibility layer.
  
  Reviewed by:  hselasky

Modified:
  head/sys/compat/linuxkpi/common/include/linux/io.h

Modified: head/sys/compat/linuxkpi/common/include/linux/io.h
==============================================================================
--- head/sys/compat/linuxkpi/common/include/linux/io.h  Tue May 24 08:54:41 
2016        (r300593)
+++ head/sys/compat/linuxkpi/common/include/linux/io.h  Tue May 24 09:23:04 
2016        (r300594)
@@ -202,6 +202,17 @@ void iounmap(void *addr);
 #define        memcpy_toio(a, b, c)    memcpy((a), (b), (c))
 
 static inline void
+__iowrite32_copy(void *to, void *from, size_t count)
+{
+       uint32_t *src;
+       uint32_t *dst;
+       int i;
+
+       for (i = 0, src = from, dst = to; i < count; i++, src++, dst++)
+               __raw_writel(*src, dst);
+}
+
+static inline void
 __iowrite64_copy(void *to, void *from, size_t count)
 {
 #ifdef __LP64__
@@ -212,13 +223,7 @@ __iowrite64_copy(void *to, void *from, s
        for (i = 0, src = from, dst = to; i < count; i++, src++, dst++)
                __raw_writeq(*src, dst);
 #else
-       uint32_t *src;
-       uint32_t *dst;
-       int i;
-
-       count *= 2;
-       for (i = 0, src = from, dst = to; i < count; i++, src++, dst++)
-               __raw_writel(*src, dst);
+       __iowrite32_copy(to, from, count * 2);
 #endif
 }
 
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to