Index: kernel/arch/mips32/include/asm.h
===================================================================
--- kernel/arch/mips32/include/asm.h	(revision 96e0748d7558e9aeb4c97ff5d520f773c406eeac)
+++ kernel/arch/mips32/include/asm.h	(revision dc22844fb0d5ea9ccfad3f1097a7bf38da0c0ef9)
@@ -76,10 +76,10 @@
 extern void asm_delay_loop(uint32_t t);
 
-static inline void pio_write_8(ioport_t port, uint8_t v)
+static inline void pio_write_8(ioport8_t *port, uint8_t v)
 {
 	/* XXX */
 }
 
-static inline uint8_t pio_read_8(ioport_t port)
+static inline uint8_t pio_read_8(ioport8_t *port)
 {
 	return 0;	/* XXX */
Index: kernel/arch/mips32/include/types.h
===================================================================
--- kernel/arch/mips32/include/types.h	(revision 96e0748d7558e9aeb4c97ff5d520f773c406eeac)
+++ kernel/arch/mips32/include/types.h	(revision dc22844fb0d5ea9ccfad3f1097a7bf38da0c0ef9)
@@ -58,5 +58,7 @@
 typedef int32_t native_t;
 
-typedef uintptr_t ioport_t;
+typedef volatile uint8_t ioport8_t;
+typedef volatile uint16_t ioport16_t;
+typedef volatile uint32_t ioport32_t;
 
 typedef struct {
