Index: uspace/lib/c/arch/abs32le/include/libarch/ddi.h
===================================================================
--- uspace/lib/c/arch/abs32le/include/libarch/ddi.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/arch/abs32le/include/libarch/ddi.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -33,6 +33,5 @@
 #define LIBC_abs32le_DDI_H_
 
-#include <sys/types.h>
-#include <libarch/types.h>
+#include <ddi.h>
 
 static inline void arch_pio_write_8(ioport8_t *port, uint8_t v)
Index: uspace/lib/c/arch/arm32/include/libarch/ddi.h
===================================================================
--- uspace/lib/c/arch/arm32/include/libarch/ddi.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/arch/arm32/include/libarch/ddi.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -34,6 +34,5 @@
 #define LIBC_arm32_DDI_H_
 
-#include <sys/types.h>
-#include <libarch/types.h>
+#include <ddi.h>
 
 static inline void arch_pio_write_8(ioport8_t *port, uint8_t v)
Index: uspace/lib/c/arch/ia32/include/libarch/ddi.h
===================================================================
--- uspace/lib/c/arch/ia32/include/libarch/ddi.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/arch/ia32/include/libarch/ddi.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -34,6 +34,5 @@
 #define LIBC_ia32_DDI_H_
 
-#include <sys/types.h>
-#include <libarch/types.h>
+#include <ddi.h>
 
 #define IO_SPACE_BOUNDARY  ((void *) (64 * 1024))
Index: uspace/lib/c/arch/ia64/include/libarch/ddi.h
===================================================================
--- uspace/lib/c/arch/ia64/include/libarch/ddi.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/arch/ia64/include/libarch/ddi.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -36,6 +36,5 @@
 #define LIBC_ia64_DDI_H_
 
-#include <sys/types.h>
-#include <libarch/types.h>
+#include <ddi.h>
 
 #define IO_SPACE_BOUNDARY	((void *) (64 * 1024))
Index: uspace/lib/c/arch/mips32/include/libarch/ddi.h
===================================================================
--- uspace/lib/c/arch/mips32/include/libarch/ddi.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/arch/mips32/include/libarch/ddi.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -34,6 +34,5 @@
 #define LIBC_mips32_DDI_H_
 
-#include <sys/types.h>
-#include <libarch/types.h>
+#include <ddi.h>
 
 static inline void arch_pio_write_8(ioport8_t *port, uint8_t v)
Index: uspace/lib/c/arch/ppc32/include/libarch/ddi.h
===================================================================
--- uspace/lib/c/arch/ppc32/include/libarch/ddi.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/arch/ppc32/include/libarch/ddi.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -34,6 +34,5 @@
 #define LIBC_ppc32_DDI_H_
 
-#include <sys/types.h>
-#include <libarch/types.h>
+#include <ddi.h>
 
 static inline void arch_pio_write_8(ioport8_t *port, uint8_t v)
Index: uspace/lib/c/arch/riscv64/include/libarch/ddi.h
===================================================================
--- uspace/lib/c/arch/riscv64/include/libarch/ddi.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/arch/riscv64/include/libarch/ddi.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -33,6 +33,5 @@
 #define LIBC_riscv64_DDI_H_
 
-#include <sys/types.h>
-#include <libarch/types.h>
+#include <ddi.h>
 
 static inline void arch_pio_write_8(ioport8_t *port, uint8_t v)
Index: uspace/lib/c/arch/sparc64/include/libarch/ddi.h
===================================================================
--- uspace/lib/c/arch/sparc64/include/libarch/ddi.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/arch/sparc64/include/libarch/ddi.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -34,6 +34,5 @@
 #define LIBC_sparc64_DDI_H_
 
-#include <sys/types.h>
-#include <libarch/types.h>
+#include <ddi.h>
 
 static inline void memory_barrier(void)
Index: uspace/lib/c/generic/ddi.c
===================================================================
--- uspace/lib/c/generic/ddi.c	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/generic/ddi.c	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -37,5 +37,4 @@
 #include <stdio.h>
 #include <errno.h>
-#include <sys/types.h>
 #include <abi/ddi/arg.h>
 #include <ddi.h>
Index: uspace/lib/c/include/ddi.h
===================================================================
--- uspace/lib/c/include/ddi.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/include/ddi.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -37,5 +37,6 @@
 
 #include <stdbool.h>
-#include <sys/types.h>
+#include <stddef.h>
+#include <stdint.h>
 #include <sys/time.h>
 #include <abi/ddi/irq.h>
@@ -47,4 +48,8 @@
 #define DMAMEM_16MiB  ((uintptr_t) UINT64_C(0xffffffffff000000))
 #define DMAMEM_4GiB   ((uintptr_t) UINT64_C(0xffffffff00000000))
+
+typedef volatile uint8_t ioport8_t;
+typedef volatile uint16_t ioport16_t;
+typedef volatile uint32_t ioport32_t;
 
 extern int device_assign_devno(void);
Index: uspace/lib/c/include/sys/types.h
===================================================================
--- uspace/lib/c/include/sys/types.h	(revision 0e7c3d945e5577b7d3eb35ce33778dfb21249380)
+++ uspace/lib/c/include/sys/types.h	(revision dde4689b360dc912d3781224af7dabdb0e89fbcb)
@@ -46,8 +46,4 @@
 typedef uint32_t fourcc_t;
 
-typedef volatile uint8_t ioport8_t;
-typedef volatile uint16_t ioport16_t;
-typedef volatile uint32_t ioport32_t;
-
 typedef int16_t unaligned_int16_t __attribute__ ((aligned(1)));
 typedef int32_t unaligned_int32_t __attribute__ ((aligned(1)));
