summaryrefslogtreecommitdiffstats
path: root/include/linux/firewire.h
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2010-07-18 12:44:01 +0200
committerStefan Richter <stefanr@s5r6.in-berlin.de>2010-07-23 13:36:27 +0200
commit18d0cdfd1a4cc9028c0ef80f94538b31541f8fe5 (patch)
treec28db7537da311e59e871aba7f6f0edaa46535b9 /include/linux/firewire.h
parent80792d182e43bee89fce509e64fdea27e600530f (diff)
downloadop-kernel-dev-18d0cdfd1a4cc9028c0ef80f94538b31541f8fe5.zip
op-kernel-dev-18d0cdfd1a4cc9028c0ef80f94538b31541f8fe5.tar.gz
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>
Diffstat (limited to 'include/linux/firewire.h')
-rw-r--r--include/linux/firewire.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/include/linux/firewire.h b/include/linux/firewire.h
index adc5b55..0c38b8e 100644
--- a/include/linux/firewire.h
+++ b/include/linux/firewire.h
@@ -285,10 +285,10 @@ struct fw_packet {
u32 timestamp;
/*
- * This callback is called when the packet transmission has
- * completed; for successful transmission, the status code is
- * the ack received from the destination, otherwise it's a
- * negative errno: ENOMEM, ESTALE, ETIMEDOUT, ENODEV, EIO.
+ * This callback is called when the packet transmission has completed.
+ * For successful transmission, the status code is the ack received
+ * from the destination. Otherwise it is one of the juju-specific
+ * rcodes: RCODE_SEND_ERROR, _CANCELLED, _BUSY, _GENERATION, _NO_ACK.
* The callback can be called from tasklet context and thus
* must never block.
*/
OpenPOWER on IntegriCloud