diff --git a/sys/dev/firewire/fwohci.c b/sys/dev/firewire/fwohci.c
--- a/sys/dev/firewire/fwohci.c
+++ b/sys/dev/firewire/fwohci.c
@@ -2696,7 +2696,7 @@
 	info = &tinfo[fp->mode.common.tcode];
 	r = info->hdr_len + sizeof(uint32_t);
 	if ((info->flag & FWTI_BLOCK_ASY) != 0)
-		r += roundup2(fp->mode.wreqb.len, sizeof(uint32_t));
+		r += roundup2((uint32_t)fp->mode.wreqb.len, sizeof(uint32_t));
 
 	if (r == sizeof(uint32_t)) {
 		/* XXX */