Index: uspace/Makefile
===================================================================
--- uspace/Makefile	(revision 797dc79ee12bed776884b2a6d1fb8d21d6b372f2)
+++ uspace/Makefile	(revision 4c363fa28181030ea38d909efb8e3f758d7d1b29)
@@ -134,5 +134,10 @@
 	srv/hid/output \
 	srv/hid/remcons \
+	srv/hw/bus/cuda_adb \
 	srv/hw/char/s3c24xx_uart \
+	srv/hw/irc/apic \
+	srv/hw/irc/i8259 \
+	srv/hw/irc/icp-ic \
+	srv/hw/irc/obio \
 	srv/hid/rfb \
 	drv/audio/hdaudio \
@@ -143,13 +148,6 @@
 	drv/block/ata_bd \
 	drv/block/ddisk \
-	drv/char/i8042 \
-	drv/char/pl050 \
-	drv/char/ps2mouse \
-	drv/char/atkbd \
-	drv/char/xtkbd \
-	drv/test/test1 \
-	drv/test/test2 \
-	drv/test/test3 \
-	drv/fb/kfb \
+	drv/bus/isa \
+	drv/bus/pci/pciintel \
 	drv/bus/usb/ehci \
 	drv/bus/usb/ohci \
@@ -161,4 +159,15 @@
 	drv/bus/usb/usbmid \
 	drv/bus/usb/vhc \
+	drv/char/i8042 \
+	drv/char/ns8250 \
+	drv/char/pl050 \
+	drv/char/ps2mouse \
+	drv/char/atkbd \
+	drv/char/xtkbd \
+	drv/test/test1 \
+	drv/test/test2 \
+	drv/test/test3 \
+	drv/fb/amdm37x_dispc \
+	drv/fb/kfb \
 	drv/nic/ne2k \
 	drv/nic/e1k \
@@ -166,56 +175,16 @@
 	drv/nic/rtl8169 \
 	drv/nic/ar9271 \
-	drv/platform/icp
-
-## Platform-specific hardware support
-#
-
-ifeq ($(UARCH), $(filter $(UARCH),amd64 ia32 ia64))
-	DIRS += \
-		drv/platform/pc \
-		drv/bus/pci/pciintel \
-		drv/bus/isa \
-		drv/char/ns8250 \
-		drv/time/cmos-rtc \
-		srv/hw/irc/apic \
-		srv/hw/irc/i8259
-endif
-
-ifeq ($(UARCH), $(filter $(UARCH),mips32 mips32eb))
-ifeq ($(MACHINE),msim)
-	DIRS += \
-		drv/platform/msim
-else
-	DIRS += \
-		drv/platform/malta \
-		drv/bus/pci/pciintel \
-		drv/bus/isa
-endif
-endif
-
-ifeq ($(UARCH),ppc32)
-	DIRS += \
-		drv/platform/mac \
-		drv/bus/pci/pciintel \
-		srv/hw/bus/cuda_adb
-endif
-
+	drv/platform/amdm37x \
+	drv/platform/icp \
+	drv/platform/mac \
+	drv/platform/malta \
+	drv/platform/msim \
+	drv/platform/pc \
+	drv/time/cmos-rtc
+
+## sun4u driver won't compile on 32-bit targets
 ifeq ($(UARCH),sparc64)
 	DIRS += \
-		srv/hw/irc/obio
-ifeq ($(MACHINE),generic)
-	DIRS += \
-		drv/platform/sun4u \
-		drv/bus/pci/pciintel \
-		drv/bus/isa \
-		drv/char/ns8250
-endif
-endif
-
-ifeq ($(UARCH),arm32)
-	DIRS += \
-		drv/platform/amdm37x \
-		drv/fb/amdm37x_dispc \
-		srv/hw/irc/icp-ic
+		drv/platform/sun4u
 endif
 
Index: uspace/srv/hw/bus/cuda_adb/cuda_adb.c
===================================================================
--- uspace/srv/hw/bus/cuda_adb/cuda_adb.c	(revision 797dc79ee12bed776884b2a6d1fb8d21d6b372f2)
+++ uspace/srv/hw/bus/cuda_adb/cuda_adb.c	(revision 4c363fa28181030ea38d909efb8e3f758d7d1b29)
@@ -466,5 +466,5 @@
 
 	if (size != 3) {
-		printf("unrecognized packet, size=%d\n", size);
+		printf("unrecognized packet, size=%zu\n", size);
 		for (i = 0; i < size; ++i) {
 			printf(" 0x%02x", data[i]);
@@ -475,5 +475,5 @@
 
 	if (reg_no != 0) {
-		printf("unrecognized packet, size=%d\n", size);
+		printf("unrecognized packet, size=%zu\n", size);
 		for (i = 0; i < size; ++i) {
 			printf(" 0x%02x", data[i]);
Index: uspace/srv/hw/irc/icp-ic/icp-ic.c
===================================================================
--- uspace/srv/hw/irc/icp-ic/icp-ic.c	(revision 797dc79ee12bed776884b2a6d1fb8d21d6b372f2)
+++ uspace/srv/hw/irc/icp-ic/icp-ic.c	(revision 4c363fa28181030ea38d909efb8e3f758d7d1b29)
@@ -65,5 +65,5 @@
 		return EINVAL;
 
-	log_msg(LOG_DEFAULT, LVL_NOTE, "Enable IRQ %d", irq);
+	log_msg(LOG_DEFAULT, LVL_NOTE, "Enable IRQ %zu", irq);
 
 	pio_write_32(&icpic_regs->irq_enableset, BIT_V(uint32_t, irq));
Index: uspace/srv/hw/irc/obio/obio.c
===================================================================
--- uspace/srv/hw/irc/obio/obio.c	(revision 797dc79ee12bed776884b2a6d1fb8d21d6b372f2)
+++ uspace/srv/hw/irc/obio/obio.c	(revision 4c363fa28181030ea38d909efb8e3f758d7d1b29)
@@ -48,4 +48,5 @@
 #include <ddi.h>
 #include <align.h>
+#include <inttypes.h>
 #include <stdbool.h>
 #include <errno.h>
@@ -127,5 +128,5 @@
 	}
 	
-	printf("%s: OBIO registers with base at %lx\n", NAME, base_phys);
+	printf("%s: OBIO registers with base at 0x%" PRIun "\n", NAME, base_phys);
 	
 	async_set_fallback_port_handler(obio_connection, NULL);
