aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/firewire/core-transaction.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/firewire/core-transaction.c')
-rw-r--r--drivers/firewire/core-transaction.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/firewire/core-transaction.c b/drivers/firewire/core-transaction.c
index 2f67c8d5ce91..fcb455c08200 100644
--- a/drivers/firewire/core-transaction.c
+++ b/drivers/firewire/core-transaction.c
@@ -780,9 +780,11 @@ static void handle_exclusive_region_request(struct fw_card *card,
780 unsigned long flags; 780 unsigned long flags;
781 int tcode, destination, source; 781 int tcode, destination, source;
782 782
783 tcode = HEADER_GET_TCODE(p->header[0]);
784 destination = HEADER_GET_DESTINATION(p->header[0]); 783 destination = HEADER_GET_DESTINATION(p->header[0]);
785 source = HEADER_GET_SOURCE(p->header[1]); 784 source = HEADER_GET_SOURCE(p->header[1]);
785 tcode = HEADER_GET_TCODE(p->header[0]);
786 if (tcode == TCODE_LOCK_REQUEST)
787 tcode = 0x10 + HEADER_GET_EXTENDED_TCODE(p->header[3]);
786 788
787 spin_lock_irqsave(&address_handler_lock, flags); 789 spin_lock_irqsave(&address_handler_lock, flags);
788 handler = lookup_enclosing_address_handler(&address_handler_list, 790 handler = lookup_enclosing_address_handler(&address_handler_list,