[PATCH 053/141] staging: unisys: decouple visor_memregion_{read, write}()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx>

Signed-off-by: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx>
Signed-off-by: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
---
 .../staging/unisys/visorutil/memregion_direct.c    | 26 ++++++++--------------
 1 file changed, 9 insertions(+), 17 deletions(-)

diff --git a/drivers/staging/unisys/visorutil/memregion_direct.c b/drivers/staging/unisys/visorutil/memregion_direct.c
index 0ee7cb2..96460d7 100644
--- a/drivers/staging/unisys/visorutil/memregion_direct.c
+++ b/drivers/staging/unisys/visorutil/memregion_direct.c
@@ -124,35 +124,27 @@ visor_memregion_resize(struct memregion *memregion, ulong newsize)
 }
 EXPORT_SYMBOL_GPL(visor_memregion_resize);
 
-static int
-memregion_readwrite(BOOL is_write,
-		    struct memregion *memregion, ulong offset,
-		    void *local, ulong nbytes)
+int
+visor_memregion_read(struct memregion *memregion, ulong offset, void *dest,
+		     ulong nbytes)
 {
 	if (offset + nbytes > memregion->nbytes)
 		return -EIO;
 
-	if (is_write)
-		memcpy_toio(memregion->mapped + offset, local, nbytes);
-	else
-		memcpy_fromio(local, memregion->mapped + offset, nbytes);
-
+	memcpy_fromio(dest, memregion->mapped + offset, nbytes);
 	return 0;
 }
-
-int
-visor_memregion_read(struct memregion *memregion, ulong offset, void *dest,
-		     ulong nbytes)
-{
-	return memregion_readwrite(FALSE, memregion, offset, dest, nbytes);
-}
 EXPORT_SYMBOL_GPL(visor_memregion_read);
 
 int
 visor_memregion_write(struct memregion *memregion, ulong offset, void *src,
 		      ulong nbytes)
 {
-	return memregion_readwrite(TRUE, memregion, offset, src, nbytes);
+	if (offset + nbytes > memregion->nbytes)
+		return -EIO;
+
+	memcpy_toio(memregion->mapped + offset, src, nbytes);
+	return 0;
 }
 EXPORT_SYMBOL_GPL(visor_memregion_write);
 
-- 
2.1.4

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel




[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux