diff --git a/arch/powerpc/include/asm/io.h b/arch/powerpc/include/asm/io.h
index 56ac9fe..6b52a94 100644
--- a/arch/powerpc/include/asm/io.h
+++ b/arch/powerpc/include/asm/io.h
@@ -295,7 +295,7 @@
 map_physmem(phys_addr_t paddr, unsigned long len, unsigned long flags)
 {
 #ifdef CONFIG_ADDR_MAP
-	return (void *)(addrmap_phys_to_virt(paddr));
+	return addrmap_phys_to_virt(paddr);
 #else
 	return (void *)((unsigned long)paddr);
 #endif
diff --git a/include/addr_map.h b/include/addr_map.h
index d55f5f6..dda4d6e 100644
--- a/include/addr_map.h
+++ b/include/addr_map.h
@@ -22,7 +22,7 @@
 #include <asm/types.h>
 
 extern phys_addr_t addrmap_virt_to_phys(void *vaddr);
-extern unsigned long addrmap_phys_to_virt(phys_addr_t paddr);
+extern void *addrmap_phys_to_virt(phys_addr_t paddr);
 extern void addrmap_set_entry(unsigned long vaddr, phys_addr_t paddr,
 				phys_size_t size, int idx);
 
diff --git a/lib/addr_map.c b/lib/addr_map.c
index ff8532c..31384d1 100644
--- a/lib/addr_map.c
+++ b/lib/addr_map.c
@@ -47,26 +47,29 @@
 	return (phys_addr_t)(~0);
 }
 
-unsigned long addrmap_phys_to_virt(phys_addr_t paddr)
+void *addrmap_phys_to_virt(phys_addr_t paddr)
 {
 	int i;
 
 	for (i = 0; i < CONFIG_SYS_NUM_ADDR_MAP; i++) {
-		u64 base, upper, addr;
+		phys_addr_t base, upper;
 
 		if (address_map[i].size == 0)
 			continue;
 
-		addr = (u64)paddr;
-		base = (u64)(address_map[i].paddr);
-		upper = (u64)(address_map[i].size) + base - 1;
+		base = address_map[i].paddr;
+		upper = address_map[i].size + base - 1;
 
-		if (addr >= base && addr <= upper) {
-			return paddr - address_map[i].paddr + address_map[i].vaddr;
+		if (paddr >= base && paddr <= upper) {
+			phys_addr_t offset;
+
+			offset = address_map[i].paddr - address_map[i].vaddr;
+
+			return (void *)(unsigned long)(paddr - offset);
 		}
 	}
 
-	return (unsigned long)(~0);
+	return (void *)(~0);
 }
 
 void addrmap_set_entry(unsigned long vaddr, phys_addr_t paddr,
