firewire: normalize status values in packet callbacks
authorStefan Richter <stefanr@s5r6.in-berlin.de>
Sun, 18 Jul 2010 10:44:01 +0000 (12:44 +0200)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Fri, 23 Jul 2010 11:36:27 +0000 (13:36 +0200)
commit18d0cdfd1a4cc9028c0ef80f94538b31541f8fe5
treec28db7537da311e59e871aba7f6f0edaa46535b9
parent80792d182e43bee89fce509e64fdea27e600530f
firewire: normalize status values in packet callbacks

core-transaction.c transmit_complete_callback() and close_transaction()
expect packet callback status to be an ACK or RCODE, and ACKs get
translated to RCODEs for transaction callbacks.

An old comment on the packet callback API (been there from the initial
submission of the stack) and the dummy_driver implementation of
send_request/send_response deviated from this as they also included
-ERRNO in the range of status values.

Let's narrow status values down to ACK and RCODE to prevent surprises.
RCODE_CANCELLED is chosen as the dummy_driver's RCODE as its meaning of
"transaction timed out" comes closest to what happens when a transaction
coincides with card removal.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
drivers/firewire/core-card.c
drivers/firewire/core-transaction.c
include/linux/firewire.h