diff --git a/drivers/firewire/fw-ohci.c b/drivers/firewire/fw-ohci.c
index 4512edba6cb04981c715934a200bb0c8fc91ed0b..4d54ebf0b19299270ad74f4f819af33c81e5953a 100644
--- a/drivers/firewire/fw-ohci.c
+++ b/drivers/firewire/fw-ohci.c
@@ -1352,10 +1352,10 @@ ohci_queue_iso(struct fw_iso_context *base,
 	else
 		irq = descriptor_no_irq;
 
-	last->control = cpu_to_le16(descriptor_output_last |
-				    descriptor_status |
-				    descriptor_branch_always |
-				    irq);
+	last->control |= cpu_to_le16(descriptor_output_last |
+				     descriptor_status |
+				     descriptor_branch_always |
+				     irq);
 
 	dma_sync_single_for_device(ohci->card.device, ctx->buffer_bus,
 				   ISO_BUFFER_SIZE, DMA_TO_DEVICE);