Index: kernel/generic/src/synch/mutex.c
===================================================================
--- kernel/generic/src/synch/mutex.c	(revision 6ec34bb5fad629f5f7a35c83be3989039bb8fba4)
+++ kernel/generic/src/synch/mutex.c	(revision 373acb498b8d03eb86878ff7b4dd94c4fecea96f)
@@ -40,4 +40,5 @@
 #include <synch/synch.h>
 #include <debug.h>
+#include <arch.h>
 
 /** Initialize mutex.
@@ -69,8 +70,8 @@
 	int rc;
 
-	if (mtx->type == MUTEX_PASSIVE) {
+	if (mtx->type == MUTEX_PASSIVE && THREAD) {
 		rc = _semaphore_down_timeout(&mtx->sem, usec, flags);
 	} else {
-		ASSERT(mtx->type == MUTEX_ACTIVE);
+		ASSERT(mtx->type == MUTEX_ACTIVE || !THREAD);
 		ASSERT(usec == SYNCH_NO_TIMEOUT);
 		ASSERT(!(flags & SYNCH_FLAGS_INTERRUPTIBLE));
