Index: uspace/drv/audio/hdaudio/hdaudio.c
===================================================================
--- uspace/drv/audio/hdaudio/hdaudio.c	(revision c19a5a59bb6be5cf8da4e0c9a6a35d207103bc14)
+++ uspace/drv/audio/hdaudio/hdaudio.c	(revision 071a1ddbcc6bb2b9c6f3c1a3acc865f1f23b5fe0)
@@ -263,8 +263,8 @@
 	}
 
-	int irq_cap = register_interrupt_handler(dev, res.irqs.irqs[0],
-	    hdaudio_interrupt, &irq_code);
-	if (irq_cap < 0) {
-		rc = irq_cap;
+	int irq_cap;
+	rc = register_interrupt_handler(dev, res.irqs.irqs[0],
+	    hdaudio_interrupt, &irq_code, &irq_cap);
+	if (rc != EOK) {
 		ddf_msg(LVL_ERROR, "Failed registering interrupt handler. (%d)",
 		    rc);
Index: uspace/drv/audio/sb16/main.c
===================================================================
--- uspace/drv/audio/sb16/main.c	(revision c19a5a59bb6be5cf8da4e0c9a6a35d207103bc14)
+++ uspace/drv/audio/sb16/main.c	(revision 071a1ddbcc6bb2b9c6f3c1a3acc865f1f23b5fe0)
@@ -123,8 +123,7 @@
 	};
 
-	irq_cap = register_interrupt_handler(device, irq, irq_handler,
-	    &irq_code);
-	if (irq_cap < 0) {
-		rc = irq_cap;
+	rc = register_interrupt_handler(device, irq, irq_handler,
+	    &irq_code, &irq_cap);
+	if (rc != EOK) {
 		ddf_log_error("Failed to register irq handler: %s.",
 		    str_error(rc));
