diff --git a/arch/nios2/include/asm/io.h b/arch/nios2/include/asm/io.h
index 2200dab..d0adf08 100644
--- a/arch/nios2/include/asm/io.h
+++ b/arch/nios2/include/asm/io.h
@@ -44,13 +44,10 @@
 
 static inline void *ioremap(unsigned long physaddr, unsigned long size)
 {
-	return (void *)(IO_REGION_BASE | physaddr);
+	DECLARE_GLOBAL_DATA_PTR;
+	return (void *)(gd->arch.io_region_base | physaddr);
 }
 
-extern unsigned char inb (unsigned char *port);
-extern unsigned short inw (unsigned short *port);
-extern unsigned inl (unsigned port);
-
 #define __raw_writeb(v,a)       (*(volatile unsigned char  *)(a) = (v))
 #define __raw_writew(v,a)       (*(volatile unsigned short *)(a) = (v))
 #define __raw_writel(v,a)       (*(volatile unsigned int   *)(a) = (v))
